Sayfalama bağlantıları düzgün çalışmıyor - yanlış PHP fonksiyonu?

1 Cevap php

Ben hala düzgün çalışmak için benim Sayfalandırması komut düzeltmek için nasıl anlamaya çalışıyorum.

Ben yaşıyorum sorun ben sonraki sayfaya gitmek için sayfalama sayı bağlantılardan birini tıkladığınızda, yeni içerik yüklemek yok olduğunu. Kelimenin tam anlamıyla hiçbir şey olmuyor ve Firebug konsolunda bakarken, hiçbir şey gönderilen veya yüklenir.

Ben içeriği filtrelemek ve görüntülemek için ana sayfa 3 bağlantıları var. Bu bağlantıları tıklandığında sonuçlar yüklenmiş ve bu özel içerik için ilgili pagination numaraları ile birlikte görüntülenir.

I believe the problem is coming from the function(generate_pagination.php (seen below)).

İşte bu yüzden sen nasıl ben (php yeni kulüpler dahil) ve fonksiyonunu başladım olabilir ana sayfası:

<?php
include_once('generate_pagination.php');
?>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<script type="text/javascript" src="jquery_pagination.js"></script>

<div id="loading" ></div>
<div id="content" data-page="1"></div>

<ul id="pagination">
<?php generate_pagination($sql) ?>
</ul>

<br />
<br />

<a href="#" class="category" id="marketing">Marketing</a>
<a href="#" class="category" id="automotive">Automotive</a>
<a href="#" class="category" id="sports">Sports</a>

Yukarıda belirtildiği gibi i işlev biçimleri şey ve nasıl düzgün onları birleştirmek için biliyorum çünkü sorun devam düşünüyorum nerede bu olduğunu:

<?php
function generate_pagination($sql) {
  include_once('config.php');
  $per_page = 3;

  //Calculating no of pages
    $result = mysql_query($sql);
    $count = mysql_fetch_row($result);
    $pages = ceil($count[0]/$per_page);

  //Pagination Numbers
  for($i=1; $i<=$pages; $i++)
  {
    echo '<li class="page_numbers" id="'.$i.'">'.$i.'</li>';
  }
}

$ids=$_GET['ids'];
generate_pagination("SELECT COUNT(*) FROM explore WHERE category='$ids'");

?>

Ben birini görmek için de jquery yoluyla istiyor olabilir olmadığını düşündüm:

$(document).ready(function(){

 //Display Loading Image
 function Display_Load()
 {
     $("#loading").fadeIn(900,0);
  $("#loading").html("<img src='bigLoader.gif' />");
 }
 //Hide Loading Image
 function Hide_Load()
 {
  $("#loading").fadeOut('slow');
 };


   //Default Starting Page Results

 $("#pagination li:first").css({'color' : '#FF0084'}).css({'border' : 'none'});

 Display_Load();

 $("#content").load("pagination_data.php?page=1", Hide_Load());

//Pagination Click
$("#pagination li").click(function(){

  Display_Load();

  //CSS Styles
  $("#pagination li")
  .css({'border' : 'solid #dddddd 1px'})
  .css({'color' : '#0063DC'});

  $(this)
  .css({'color' : '#FF0084'})
  .css({'border' : 'none'});

  //Loading Data
  var pageNum = this.id;

    $("#content").load("pagination_data.php?page=" + pageNum, function(){

          $(this).attr('data-page', pageNum);

           Hide_Load();
        });
});

// Editing below.        
// Sort content Marketing    
    $("a.category").click(function() {
        Display_Load();

        var this_id = $(this).attr('id');

      $.get("pagination.php", { category: this.id },
        function(data){

            //Load your results into the page  
            var pageNum = $('#content').attr('data-page');

            $("#pagination").load('generate_pagination.php?category=' + pageNum +'&ids='+ this_id );
            $("#content").load("filter_marketing.php?page=" + pageNum +'&id='+ this_id, Hide_Load());
        });  
    });


});

Herhangi bir yardım fonksiyonu düzgün çalışması için alma konusunda duyacağız. Teşekkür ederim

1 Cevap

Kimlikleri, numaraları ile başlar kimlikleri böyle page gibi bir başlangıç ​​dizesini veremez:

Php:

for($i=1; $i<=$pages; $i++)
{
  echo '<li class="page_numbers" id="page'.$i.'">'.$i.'</li>';
}

JQuery:

var pageNum = $(this).attr("id").replace("page","");

$("#content").load("pagination_data.php?page=" + pageNum, function(){
    $(this).attr('data-page', pageNum);
    Hide_Load();
});

Eğer bu olmuyorsa en azından bir şeyleri geri göndermeye başlamak gerekir, yorum lütfen.