这个简单的 PHP 代码有什么问题?
我刚刚尝试开始使用 PDO 来处理 PHP 中的数据库访问。
我尝试了以下代码:
$dbh = new PDO("mysql:host=$kdbhost;dbname=$kdbname",$kdbuser,$kdbpw);
$sth = $dbh->("INSERT INTO enquiries (name, email, message) VALUES(:name, :email, :message);");
Dreamweaver 在第二行给了我一个语法错误,我一生都无法弄清楚为什么?
注意我遵循了这个nettuts 教程 给出了一个没有方法名称的示例。
I've just tried to start using PDO to handle database access in PHP.
I tried the following code:
$dbh = new PDO("mysql:host=$kdbhost;dbname=$kdbname",$kdbuser,$kdbpw);
$sth = $dbh->("INSERT INTO enquiries (name, email, message) VALUES(:name, :email, :message);");
And dreamweaver gives me a syntax error on the second line, and I can't figure out for the life of me why?
Note I followed this nettuts tutorial which gave an example without the method name.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您需要这样做:
$dbh->(
是一个语法错误,因为您没有调用$dbh
对象的方法。在这种情况下,您想要使用prepare()
准备查询,因此您最终会得到:You need to do this:
$dbh->(
is a syntax error because you're not calling a method of the$dbh
object. In this case, you want to useprepare()
to prepare the query, so you end up with:您在调用中缺少一个方法:
将 yourMethod 替换为prepare(如果这是您需要的方法)或 PDO 实例提供的任何其他方法。
You are missing a method in your call:
Replace yourMethod with prepare (if that's the method you need) or any other method provided from the PDO instance.
您错过了准备函数名称
$sth = $dbh->
prepare("INSERT INTO 查询 (姓名、电子邮件、消息) VALUES(:name, :电子邮件、:消息);");
you missed the prepare function name
$sth = $dbh->
prepare("INSERT INTO enquiries (name, email, message) VALUES(:name, :email, :message);");