1

我在同一个类中有三个函数,函数由数据库查询组成。在其他功能中查询正常,如下所示:

$userId = $_SESSION['uid'];

        $st = $this->db->prepare("SELECT * FROM showinfo, usershows WHERE usershows.showid = showinfo.showid AND usershows.userid = :userId");
        $st->bindParam('userId', $userId);
        $st-> execute();

但是这里的查询不起作用:

$st = $this->db->prepare("DELETE FROM usershows WHERE usershows.userid = :userId");
            $st->bindParam(':userid', $userId);
            $st->execute();

它说:

警告:PDOStatement::execute(): SQLSTATE[HY093]: 参数号无效:参数未在(文件位置)中定义

并且代码可以回显我的userId,所以不能为空。

有什么建议么?

4

1 回答 1

2

在您的第二个示例bindParam()中,您需要使用:userId而不是:userid

PHP 区分大小写!

于 2013-09-24T19:37:32.810 回答