首页 > 解决方案 > 如何使用带有非分配参数的 PHP PDO

问题描述

现在我可以从 Stack Overflow 上某人的评论中了解到 PDO 不适用于非分配参数,但现在我需要它,我再也找不到那个评论了。这就是我的意思:

        $sql = "SELECT * FROM posts ORDER BY id DESC LIMIT $start, $limit";
        $stmt = $con->prepare($sql);
        $stmt->execute();

现在我正在尝试用正确的 PDO 重写这个查询语句。$start 和 $limit 是从 AJAX SCRIPT 发送数据的变量。它应该限制无限滚动 PHP 脚本中的获取结果。但我很清楚 MYSQL 注入,所以如果有人能够操纵我的 Javascript 代码并发送“;DELETE * FROM 帖子而不是数字,那将是灾难性的。所以我一直在向互联网收费以寻找解决方案。A适当的 PDO 应该是

$sql = "SELECT * FROM posts ORDER BY id DESC LIMIT :Start, :Limit";
OR
$sql = "SELECT * FROM posts ORDER BY id DESC LIMIT ?, ?";

但由于某些原因,它们不起作用。任何帮助将不胜感激。提前致谢!

标签: phpmysqlajaxpdo

解决方案


推荐阅读