【发布时间】:2014-12-12 23:19:55
【问题描述】:
我为我的网站创建了一个分页,它显示一个错误:
解析错误:语法错误,第 29 行的文件夹名中出现意外的 '"'
这是我一直在处理的代码:
<?php
$count_query = mysql_query("SELECT NULL FROM posts");
$count = mysql_num_rows($count_query);
if (isset($_GET['page'])) {
$page = preg_replace("#[^0-9]#","",$_GET['page']);
} else {
$page = 1;
}
$perPage = 10;
$lastPage = ceil($count / $perPage);
if ($page < 1) {
$page = 1;
} else if ($page > $lastPage) {
$page = $lastPage;
}
$limit = "LIMIT " .($page -1)"$perPage.","$perPage";
$query = mysql_query("SELECT * FROM posts ORDER BY postNum DESC $limit");
if ($lastPage != 1) {
if ($page != $lastPage) {
$next = $page + 1;
$pagination .= '<a href="foldername/?page='.$next.'" class="pagerRight">Next</a>';
}
if ($page != 1) {
$prev = $page - 1;
$pagination .= 'foldername/?page='.$prev.'" class="pagerLeft">Prev</a>';
}
}
?>
第 29 行是:$limit = "LIMIT " .($page -1)"$perPage.","$perPage";
【问题讨论】:
-
是的,
$limit = "LIMIT " .($page -1)"$perPage.","$perPage";肯定有问题 -
警告:
mysql_query是一个过时的接口,不应在新的应用程序中使用,因为它会在未来的 PHP 版本中被删除。像PDO is not hard to learn 这样的现代替代品。如果您是 PHP 新手,PHP The Right Way 之类的指南可以帮助您解释最佳实践。这里还有一些高度可疑的代码来注入分页变量,这看起来异常复杂。 -
是的,我知道,但你知道那段代码有什么问题吗???
-
echo $limit = "LIMIT " .($page -1)"$perPage.","$perPage";你会看到正在通过什么。你需要修复你的连接。 -
如果我们知道你想要
$limit是什么,这个语法错误会更容易发现。
标签: php mysql pagination