Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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_Mysql_Pagination - Fatal编程技术网

PHP分页脚本不工作

PHP分页脚本不工作,php,mysql,pagination,Php,Mysql,Pagination,由于某种原因,我使用的分页脚本不显示帖子。它不显示任何内容,没有上一个链接,没有下一个链接,没有mysql数据库中的实际内容。页面不是白色屏幕,页面上的所有其他内容都可以正常工作。如果有人能帮我,那就太好了 <?php session_start(); include "config.php"; if($_SESSION['usrid']){ database_connect(); $sql = 'SELECT id FROM posts limit '.($page*$eachPage)

由于某种原因,我使用的分页脚本不显示帖子。它不显示任何内容,没有上一个链接,没有下一个链接,没有mysql数据库中的实际内容。页面不是白色屏幕,页面上的所有其他内容都可以正常工作。如果有人能帮我,那就太好了

<?php
session_start();
include "config.php";
if($_SESSION['usrid']){
database_connect();
$sql = 'SELECT id FROM posts limit '.($page*$eachPage).','.$eachPage;

$sql_count = 'SELECT id FROM posts';
                if(isset($_GET['page']) AND ctype_digit($_GET['page'])) {

    $page = $_GET['page'];    
}
else{

    $page = 0;    
}

if(!$res = mysql_query($sql)) {

  trigger_error(mysql_error().'<br />In query: '.$sql); 
} 
elseif(mysql_num_rows($res) == 0) { 

  echo 'No posts found'; 
} 
else { 

  while($row = mysql_fetch_assoc($res)) { 
  $posttime = date("F j \a\t g:i a", strtotime ( $row [ 'time' ] ));
      ?>
      <div class="t"><p id="i"><?php echo $row['post']; ?><br /><b class="oinf">By <a href="profile.php?id=<?php echo $row['id']; ?>" class="od"> on <?php echo $posttime; ?></a></b></p></div><br /><br />
    <?php
  }

  if($res = mysql_query($sql_count)) {

      $results = mysql_num_rows($res);
    }
  $pages = ceil($results / $eachPage);

  if($page > 0) {

      echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($page-1).'">[Previous]</a>';
  }
  else{

      echo '[Previous]';
  }

  for($i = 1; $i <= $pages; $i++)    {

      echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($i-1).'">'.$i.'</a>';
    } 

  if(($page+1) <= ($results/$eachPage)) {

      echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.($page+1).'">[Next]</a>';
  }
  else{

      echo '[Next]';
  }
}

            }else{

            };?>
编辑:我知道我试图使用此代码进行调试,但它给出的结果与上面相同,它不显示帖子:

if($_SESSION['usrid']){
    database_connect();
    $navquery = "SELECT * from posts";
$navresult = mysql_query($navquery) or die(mysql_error());  
while ($row = mysql_fetch_assoc($navresult)) {
    ?>
    <div class="t"><p id="i"><?php echo $row['post']; ?><br /><b class="oinf">By <a href="profile.php?id=<?php echo $row['id']; ?>" class="od"> on <?php echo $row['time']; ?></a></b></p></div><br /><br />
    <?php
};
};

我让它工作了,我忘记了一个}。

回显这个SQL查询并找出脚本不工作的原因

$sql = 'SELECT id FROM posts limit '.($page*$eachPage).','.$eachPage;
返回:

SELECT id FROM posts limit ,
因为$page和$eachPage没有定义。那些应该是从$\u得到的吗?因为实际上有人可以这样做:

/mypage?page=0&eachPage=;DELETE FROM posts;

你没有采取任何措施来防止这种情况发生。

这太糟糕了:window.location=index.php。你应该通过使用HTTP重定向。它什么也不显示是不是意味着你会得到一个空白的白屏?好的,我改变了,但这对我的问题没有帮助。谢谢。@Kaivosukeltaja:不,我的意思是它不会显示我想要显示的内容。页面上的所有其他内容都会显示出来,并按照我的要求工作。不工作不是一个有用的错误描述。请先进行一些调试,并尝试将问题隔离到较小的代码块中。请查看我的答案,我决定不再使用此分页脚本。