PHP / JSON-jquery нумерация страниц - PullRequest
0 голосов
/ 13 февраля 2012

Мне нужно показывать по две на странице и иметь нумерацию страниц внизу страницы.

Вот как я сейчас это делаю.

Как вы видите, в настоящее время мы не делаем никакой нумерации страниц.

PHP-код, который возвращает данные JSON

public function realcashoffers($state,$count)
{
 $this->state = $state;
 $this->number = $count;         
 $result = $this->JSONselect("approved_business, business_stores, Real_Cash_Offers"," *, group_concat(offer ORDER BY offer ASC SEPARATOR ',') as offers"," approved_business.id = business_stores.business_id AND  Real_Cash_Offers.business_id = approved_business.id  AND Real_Cash_Offers.storeid = business_stores.storeid AND business_stores.state = '{$this->state}'","GROUP BY id ORDER BY RAND(), approved_business.id DESC LIMIT {$this->number} ");

 $remaining = $count - count($result);

 if ($remaining) {
    $this->type = 'G';
    $result = array_merge($result, $this->JSONselect("iNcard_Products","*, productname as tradingname, CONCAT_WS('|', id,'{$this->type}') AS id, CONCAT_WS('|', spend, cashback) AS offer, group_concat(CONCAT_WS('|', spend, cashback) ORDER BY spend ASC SEPARATOR ',') as offers ,picurl as pictureurl","picurl != 'NULL'","GROUP BY productname ORDER BY RAND() LIMIT {$remaining} "));

 }

 print $this->JSONprint($result);
}

Код jQuery

function fetch(e,formstring)
{
    var a = 1;
    var b = 1;
    var rc="";
    var spendoffer="";
    $.ajax({
      type: 'POST',
      url: 'http://www.incard.com.au/newsite/system/classes/core.php',
      data: formstring,
      dataType: 'json',
      contentType: "application/x-www-form-urlencoded;charset=utf-8",
      beforeSend: function() {
                switch (e) {
                },
      success: function(data){
        $.each(data, function(i, obj) {

               switch (e) { 


                 //300 OFFERS
                 case 300:
                 if(a != 9)
                 {
                 $("#title"+a).html(obj.tradingname.toUpperCase());
                 if(!obj.discription)
                    {
                        obj.discription = 'We make sure that all of our customers leave with what they expected and are happy.';
                    }

                 if(!obj.pictureurl)
                 {
                    obj.pictureurl = 'http://www.incard.com.au/newsite/template/categoryimages/iStock_000008235598Small.jpg';
                 }
                 $("#pic"+a).html("<img style='width:180px;' src='"+obj.pictureurl+"'/>");
                 $("#spend"+a+"_0").html("Spend $"+obj.offers.split('|')[0].replace('.00', '').replace(' $', '')+"<br/><span>Get $"+obj.offers.split('|')[1].split(',')[0].replace(' $', '')+"</span>");
                 if(obj.offers.split(',')[b])
                 {

                    rc = obj.offers.split(',')[b];
                    spendoffer = rc.split('|');
                    $("#spend"+a+"_1").append("Spend $"+spendoffer[0].replace('.00', '').replace(' $', '')+" <span>Get $"+spendoffer[1].replace(' $ ', '')+"</span><br/>");
                    b++;
                    if(obj.offers.split(',')[b])
                    {
                    rc = obj.offers.split(',')[b];
                    spendoffer = rc.split('|');
                    $("#spend"+a+"_1").append("Spend $"+spendoffer[0].replace('.00', '').replace(' $', '')+" <span>Get $"+spendoffer[1].replace(' $', '')+"</span><br/>");
                    }
                    b++;

                    if(obj.offers.split(',')[b])
                    {
                    rc = obj.offers.split(',')[b];
                    spendoffer = rc.split('|');
                    $("#spend"+a+"_1").append("Spend $"+spendoffer[0].replace('.00', '').replace(' $ ', '')+" <span>Get $"+spendoffer[1].replace(' $', '')+"</span><br/>");
                    }

                 }
                 else
                 { 
                    b = 1;
                    //$("#spend"+a+"_1").html("More to Come");
                 }
                 if(obj.id.split('|')[1] != "G")
                 {
                    $("a#link"+a).attr("href", "?page=BusinessOffer&id="+obj.id);
                 }
                 else
                 {
                    obj.discription = 'Looking for that perfect gift for someone special or for yourself get your '+obj.tradingname+' giftcard.';
                    $("a#link"+a).attr("href", "?page=GiftCardOffer&id="+obj.id.split('|')[0]);
                 }
                 $("#description"+a).html(obj.discription);
                 national = obj.suburb;
                 if(!national)
                 {
                    national = "National";
                 }
                 $("#sub"+a).html(national.toUpperCase());
                 a++;
                 }
                 break;


            }
             });
      },
      error: function(data){
      $.each(data,function(i,myinfo){

          });
      },
      complete: function(){
        switch (e)
        {
        case 3:
            lava();
        break;
        case 700:

            showAddress(businessaddress);
        break;
      }
      },
      "text json": jQuery.parseJSON
    });
    return false;
}

1 Ответ

0 голосов
/ 08 марта 2012

Я не уверен в вашем вопросе, но уже есть плагин jquery, который может вам помочь:

Плагин Jquery

Здесь у вас живое демо

...