Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 页面加载时的增量计数_Php_Jquery_Ajax_Pagination - Fatal编程技术网

Php 页面加载时的增量计数

Php 页面加载时的增量计数,php,jquery,ajax,pagination,Php,Jquery,Ajax,Pagination,我正在尝试使用Jquery创建缩略图分页。一切都很好。我唯一的问题是我不知道如何增加每个页面加载的计数。下面是我的代码。我的主要目标是,如果用户单击“下一步”按钮,我想在此基础上增加1 php/reverse.php?page=“+page。如果不再有来自php的结果,则不允许再增加。与上一个按钮相同 <html> <head> <title></title> </head> <body>

我正在尝试使用Jquery创建缩略图分页。一切都很好。我唯一的问题是我不知道如何增加每个页面加载的计数。下面是我的代码。我的主要目标是,如果用户单击“下一步”按钮,我想在此基础上增加1 php/reverse.php?page=“+page。如果不再有来自php的结果,则不允许再增加。与上一个按钮相同

    <html>
  <head>
    <title></title>
  </head>
  <body>
      <div id="par"></div>
      <input type="button" id="prev" value="Prev"/>
      <input type="button" id="next" value="Next"/>

      <script src="js/jquery.js"></script>
      <script>
        var default_val = 1;
        function get_page(page){
          $.ajax({
            url: "php/reverse.php?page="+page
          }).done(function(data) {
            $('#par').html(data.thumbs);
          });
        }

        $('#prev').click(function(){
            get_page(default_val)
        });


        $('#next').click(function(){
         get_page(default_val+1)
        });

        get_page(default_val);
      </script>
  </body>
</html>

var default_val=1;
函数获取页面(第页){
$.ajax({
url:“php/reverse.php?page=“+page
}).完成(功能(数据){
$('#par').html(data.thumbs);
});
}
$('#prev')。单击(函数(){
获取页面(默认值)
});
$(“#下一步”)。单击(函数(){
获取页面(默认值+1)
});
获取页面(默认值);
以下是我的PHP:

<?php
  require '../php/connect.inc.php';
  $per_page = 4;

  $pages_query = mysql_query("SELECT COUNT('id') FROM my_list");
  $pages = ceil(mysql_result($pages_query, 0) / $per_page);

  $page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;
  $start = ($page - 1) * $per_page;


  $query = mysql_query("SELECT id, image_small FROM my_list LIMIT $start, $per_page");

  $results = array();
  while($mysql_fetch_assoc = mysql_fetch_assoc($query)){    
    $results[] = "<img src='img/".$mysql_fetch_assoc['image_small']."'/>";
  }      


  header('Content-type: application/json');

  echo json_encode(array(
    'thumbs' => $results,
    'pages' => $pages,
    'current_page' => $page,
    'per_page' => $per_page
  ));
?>

首先,您需要返回请求的状态

var page = 1;
function get_page(page){
  $.ajax({
    dataType: 'json',
    url: "php/reverse.php?page="+page
  }).done(function(data) {
    if (data.thumbs.length>0) {
      $('#par').html(data.thumbs);
      return true; // here
    } else
      return false; // and here
  });
}
接下来,当json返回false并增加或减少页面计数时,您需要的是阻塞函数

var block_next = false,
    block_prev = false;

$('#prev').click(function(){
  block_next = false;
  if (!block_prev)
    if (!get_page(page))
      block_prev = true;
    else
      page = page - 1;
});

$('#next').click(function(){
  block_prev = false;
  if (!block_next)
    get_page(page+1)
      block_next = true;
    else
      page = page + 1;
});
。它们不再被维护。请参阅?改为了解,并使用或-将帮助您决定使用哪个。如果您选择PDO。