我使用的分页脚本由于某种原因不显示帖子。它没有显示任何内容,没有以前的链接,没有下一个链接,没有来自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
};
};
答案 0 :(得分:0)
我开始工作,我忘记了}
。
答案 1 :(得分:0)
回显此SQL查询并找出脚本无法正常工作的原因。
$sql = 'SELECT id FROM posts limit '.($page*$eachPage).','.$eachPage;
返回:
SELECT id FROM posts limit ,
由于未定义$page
和$eachPage
。这些应该来自$_GET
吗?因为实际上有人可以这样做:
/mypage?page=0&eachPage=;DELETE FROM posts;
你没有采取任何措施来防止这种情况发生。