2012-03-25 3 views
0

Ich erhalte einen Call to a member function fetchColumn() on a non-object Fehler, wenn ich meine Abfrage mit einer MySQL vorbereiteten Anweisung auf PHPNicht-Objektfehler mit fetchColumn() in PDO

$result= $dbh->prepare("SELECT COUNT(*) FROM table WHERE id_1 = ? AND id_2 = ?"); 
$result->execute(array($id_1,$id_2))->fetchColumn(); 
echo count($result); 

Ausführung Was ist der Grund für diesen Fehler? Schreib ich die Anweisung falsch?

Dank

Antwort

1

PDOStatement::execute gibt einen booleschen zu prüfen, ob die Abfrage ordnungsgemäß ausgeführt wird. Sie können Methodenaufrufe nur verketten, wenn jede Methode die Referenz Ihres Objekts PDOStatement zurückgibt. Sie möchten dies tun

$result= $dbh->prepare("SELECT COUNT(*) FROM table WHERE id_1 = ? AND id_2 = ?"); 
$result->execute(array($id_1,$id_2)); 
echo $result->fetchColumn(); 
+0

Vielen Dank! das funktioniert! – hellomello