【发布时间】:2017-07-26 12:41:50
【问题描述】:
我正在尝试为我的 PHP SELECT 查询使用准备好的语句,但我收到此错误
SQLite3Stmt::execute() 需要 0 个参数,1 个在第 75 行的 C:\xampp\htdocs\xport\post.php 中给出
这里可能有什么问题?我会参考我得到的答案here
但这不起作用。下面是我的代码。
$postid = (int) $_GET['post_id'];
$userpostquery = "SELECT * FROM users WHERE userid = ?";
$stmt = $db->prepare($userpostquery);
$stmt->execute([$postid]);
while ($row = $stmt->fetch(PDO::FETCH_ASSOC))
{
$cname = $row['cname'];
echo $cname;
}
谢谢。
【问题讨论】:
-
$stmt->execute([$postid]);删除[$postid]。从那开始。 -
@Fred-ii- 如果我这样做,我现在将如何在
$userpostquery即bindValue ? with #postid中获得我想要的东西。 -
查看@chris85 发布的链接。
-
所以替换
$stmt->execute([$postid]);为$stmt->execute();和之前的$stmt->bindValue(1, $postid, SQLITE3_INTEGER);
标签: php mysql sqlite prepared-statement