Что не так с этим простым кодом PHP? - PullRequest
0 голосов
/ 20 января 2012

Я только что попытался начать использовать 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 , в котором приводился пример без имени метода.

Ответы [ 3 ]

3 голосов
/ 20 января 2012

Вам нужно сделать это:

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

$dbh->( является синтаксической ошибкой, поскольку вы не вызываете метод объекта $dbh. В этом случае вы хотите использовать prepare() для подготовки запроса, поэтому вы получите:

$sth = $dbh->prepare( ... );
0 голосов
/ 20 января 2012

вы пропустили название функции подготовки

$sth = $dbh-> подготовка ("INSERT INTO enquiries (name, email, message) VALUES(:name, :email, :message);");

0 голосов
/ 20 января 2012

В вашем вызове отсутствует метод:

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

Замените ваш метод подготовкой (если вам нужен этот метод) или любым другим методом, предоставленным из экземпляра PDO.

...