我想在sql fetched行上使用分页。我正在使用此代码:
<?php
$rec_limit = 4;
$sql = "SELECT count(id) FROM wp_wct8 ";
$retval = mysql_query( $sql);
if(! $retval ) {
die('Could not get data: ' . mysql_error());
}
$row = mysql_fetch_array($retval, MYSQL_NUM );
$rec_count = $row[0];
if( isset($_GET{'page'} ) ) {
$page = $_GET{'page'} + 1;
$offset = $rec_limit * $page ;
}else {
$page = 0;
$offset = 0;
}
$left_rec = $rec_count - ($page * $rec_limit);
$sql = "SELECT id, name, insurance ".
"FROM wp_wct8 ".
"LIMIT $offset, $rec_limit";
$retval = mysql_query( $sql);
if(! $retval ) {
die('Could not get data: ' . mysql_error());
}
while ($b = mysql_fetch_array($retval)){
echo $b['name'];
echo $b['insurance'];
}
if( $page > 0 ) {
$last = $page - 2;
echo "<a href = \"$_PHP_SELF?page = $last\">Last 4 Records</a> |";
echo "<a href = \"$_PHP_SELF?page = $page\">Next 4 Records</a>";
}else if( $page == 0 ) {
echo "<a href = \"$_PHP_SELF?page = $page\">Next 4 Records</a>";
}else if( $left_rec < $rec_limit ) {
$last = $page - 2;
echo "<a href = \"$_PHP_SELF?page = $last\">Last 4 Records</a>";
}
?>
但是分页不起作用...当我点击显示接下来的4条记录时,它显示的是相同的记录而不是下一条...请帮助...提前感谢
答案 0 :(得分:0)
我不建议您将此代码放在网上,因为它很容易受到SQL注入攻击。 (而不是使用预编程语句与PDO,或者至少使用SQL查询中的输入。)
我认为错误是链接中的空格。所以尝试删除空格,例如echo "<a href = \"$_PHP_SELF?page=$last\">Last 4 Records</a> |";