是我自己搞错了,谢谢大家
程序员文章站
2024-01-19 22:01:28
...
是我自己搞错了,谢谢大家
这个问题已被关闭,原因:无法获得确切结果的问题
回复内容:
是我自己搞错了,谢谢大家
bindParam
是PDOStatement
的方法,你在PDO
里当然找不到了。
PDOStatement
是PDO::prepare()
的返回对象,不知道你这里去哪看的代码,把PDO
对象命名成$stmt
,又不获取->prepare()
返回的PDOStatement
。
$pdo = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);//先新建一个PDO
$pdo->->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);//开启PDO的报错
$sql = 'SELECT * FROM article WHERE id > ?';
try{
$stmt = $pdo->prepare(sql);//返回的statment的值赋给$stmt
$stmt -> bindParam(要绑定的占位符的位置, 要绑定的变量 [, 数据类型]);//bindParam()是$stmt的方法而不是$pdo的方法
$stmt -> execute();//执行sql语句
} catch (PDOException $e) {
echo 'Execute SQL failed: ' . $e->getMessage();
exit();
}
应该是这样的
推荐阅读