什么';这个简单的PHP代码错了


What's wrong with this simple PHP code?

我刚刚尝试使用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在第二行给了我一个语法错误,我一辈子都不明白为什么?

注意,我遵循了netuts教程,其中给出了一个没有方法名称的示例。

您需要这样做:

$sth = $dbh->prepare("INSERT INTO enquiries (name, email, message) VALUES(:name, :email, :message);");

$dbh->(是一个语法错误,因为您没有调用$dbh对象的方法。在这种情况下,您希望使用prepare()来准备查询,因此最终得到:

$sth = $dbh->prepare( ... );

您的调用中缺少一个方法:

$sth = $dbh->yourMethod("INS...

将您的方法替换为prepare(如果这是您需要的方法)或PDO实例提供的任何其他方法。

您错过了准备函数名称

$sth = $dbh->准备("INSERT INTO enquiries (name, email, message) VALUES(:name, :email, :message);");