【发布时间】:2018-06-30 16:14:04
【问题描述】:
我正在尝试创建分页脚本,但以下行似乎无法正常工作,导致页面无法加载。
$limit = 20;
$start_from = ($page - 1) * $limit;
$stmt = $conn->prepare("SELECT * FROM logs ORDER BY id ASC LIMIT :startf, :limits");
$stmt->bindValue(":startf", $start_from, PDO::PARAM_INT);
$stmt->bindValue(":limits", $limit, PDO::PARAM_INT);
$stmt->execute();
我得到的错误是
PHP 致命错误:未捕获的 PDOException:SQLSTATE[42000]:语法错误 或访问冲突:1064 您的 SQL 语法有错误
我一直试图通过将 bindParam 更改为 bindValue 来修复它,添加 PDO::PARAM_INT 但它不会修复。
谢谢, 本杰
【问题讨论】:
-
也许你会得到一些
LIMIT变量的负值。您是否尝试将它们(:startf,:limits)打印出来? -
你需要检查你的变量值
-
我记得现在确实得到了一个负值。那是-20