2016-03-19 13 views
0

ich diesen Fehler erlebe:nicht Parameter 2 durch Verweis übergeben kann - PDO

"Can not Parameter 2 durch Verweis übergeben"

ich mehrere Threads aufblickte, nicht eine einzige Lösung tatsächlich für mich gearbeitet, es könnte sei ein echt dummer fehler/typ ..?

$stmt = $dbh->prepare("INSERT INTO messages (message, sender, key) VALUES (:message, :sender, :key)"); 
$stmt -> bindParam(':message', $message); 
$stmt -> bindParam(':sender', 'Smith'); 
$stmt -> bindParam(':key', 'Test-Key'); 
$stmt -> execute(); 

Das ist mein Code .. Der Fehler in Zeile zeigt 32, die der „Absender“ -Linie ist ... Ich persönlich denke, es die Nachricht Zeile statt ist.

Vielen Dank für Ihre Hilfe! :)

Antwort

3

Die bindParam() Methode Binds der Parameter auf einen variable. Strings sind sogenannte Konstanten.

Um diese Arbeit Sie eine Variable an die Methode übergeben werden müssen zu machen, wie folgt aus:

// Prepare the statement 
$stmt = $dbh->prepare("INSERT INTO messages (message, sender, key) VALUES (:message, :sender, :key)"); 

// Bind variables to the parameters 
$stmt->bindParam(':message', $message); 
$stmt->bindParam(':sender', $sender); 
$stmt->bindParam(':key', $key); 

// Give the bound variables a value 
$message = 'The message...'; 
$sender = 'Smith'; 
$key = 'Test-Key'; 

// And then execute the statement 
$stmt->execute(); 
Verwandte Themen