Сделать пагинацию с помощью Ajax с Jquery, PHP - PullRequest
0 голосов
/ 29 мая 2019

Это первый раз, когда я делаю (я имею в виду, я пытаюсь) нумерацию страниц без обновления страницы, используя Ajax с Jquery, PHP и Mysql.

Проблема: ссылки на страницы не работают.

Содержание сайта работает. Это ссылка на тестовую страницу: testpage1

Заранее благодарю за помощь.

1. Ajax (index.php)

  <div id="page"> 

  </div>

<script>  
 $(document).ready(function(){  
      load_data();  
      function load_data(page)  
      {  
           $.ajax({  
                url:"pagination2.php",  
                method:"POST",  
                data:{page:page},  
                success:function(data){  
                     $('#page').html(data);  
                }  
           })  
      }  
      $(document).on('click', '.pagination_link', function(){  
           var page = $(this).attr("id");  
           load_data(page);  
      });   
 });  
 </script> 

2. PHP (pagination2.php)

if($page_nb > 1) {
    echo "<a href='index_all.php?page=".$prev_page."'>Back</a>";
    //echo '<span style="cursor:pointer;" onclick="LoadData('.$prev_page.')">Back</span>';

}

if ( $products_count > $check ) {

    for ( $i = max( 1, $page_nb - 5 ); $i <= min( $page_nb + 5, $limit ); $i++ ) {
        if ( $current_page == $i ) {
            echo "<span class=\"selected\">{$i}</span>";
        } else {
            //echo "<a href=\"{$url}?page=" . $i . "\">{$i}</a>";
            echo "<span class='pagination_link' style='cursor:pointer;' id='".$i."'>".$i."</span>"; 
        }
      }
    }   



if ($products_count > $check) { 

$next_page = $page_nb + 1;  
    echo "<a href='index_all.php?page=".$next_page."'>Next</a>";
    //echo '<span style="cursor:pointer;" onclick="LoadData('.$next_page.')">Next</span>';

}

3. Я думаю, что нашел решение

A. Ajax

<script>  
 $(document).ready(function(){  
      load_data();  
      function load_data(page)  
      {  
           $.ajax({  
                url:"pagination2.php",  
                method:"GET",  
                data:{page:page},  
                success:function(data){  
                     $('#page').html(data);
                     //alert('Successfully called');
                }, 
              //error:function(exception){alert('Exeption:'+exception);} 
           })  
      }  
     //load_data(1);

      $(document).on('click', '.pagination_link', function(){  
           var page = $(this).attr("id");  
           load_data(page);  
      });  


 });  
 </script> 

B. Ссылки

if($page_nb > 1) {
    //echo "<a href='index_all.php?page=".$prev_page."'>Back</a>";
    echo "<span class='pagination_link' style='cursor:pointer;' id='".$prev_page."'>Back</span>";

}

if ( $products_count > $check ) {

    for ( $i = max( 1, $page_nb - 5 ); $i <= min( $page_nb + 5, $limit ); $i++ ) {
        if ( $current_page == $i ) {
            echo "<span class=\"selected\">{$i}</span>";
        } else {
            //echo "<a href=\"{$url}?page=" . $i . "\">{$i}</a>";
            echo "<span class='pagination_link' style='cursor:pointer;' id='".$i."'>".$i."</span>"; 
        }
      }
    }   



if ($products_count > $check) { 

$next_page = $page_nb + 1;  
    //echo "<a href='index_all.php?page=".$next_page."'>Next</a>";
    echo "<span class='pagination_link' style='cursor:pointer;' id='".$next_page."'>Next</span>";

}
...