我使用以下代码使用本教程https://www.youtube.com/watch?v=6SuCSIJ5wNU对mysql结果进行分页。
尽管代码工作正常,但我得到一个未定义的变量。 ":未定义的变量:"中的分页。
<?php
$get_data = $connect -> query("SELECT NULL FROM movies"); // get the table in the database
$row_count = $get_data -> rowCount(); // count rows
// pagination starts
if( isset($_GET['page']) ) {
$page = preg_replace("#[^0-9]#", "", $_GET['page']);
} else {
$page = 1;
}
$perPage = 2;
$lastPage = ceil($row_count / $perPage);
if($page < 1) {
$page = 1;
} else if($page > $lastPage) {
$page = $lastPage;
}
$limit = "LIMIT ".($page - 1) * $perPage . ", $perPage";
if($lastPage != 1) {
if($page != 1) {
$prev = $page - 1;
$pagination.='<a href="index.php?page='.$prev.'">Previous</a>';
}
if($page != $lastPage) {
$next = $page + 1;
$pagination.='<a href="index.php?page='.$next.'">Next</a>';
}
}
?>
答案 0 :(得分:2)
在运行之前,您只需先将变量定义为NULL。
$pagination = NULL;
答案 1 :(得分:0)
您在开始追加$pagination
之前从未定义.=
。
这两个是等价的:
$foo .= 'bar';
$foo = $foo . 'bar';
要进行连接,PHP必须检索尚未定义的$foo
的值,以便得到警告。然后连接发生并存储在$foo
中,因此下次尝试时不会再出现错误。