2017-01-11 2 views
1

Hallo Benutzer von Stackoverflow,Mysqli vorbereitete Anweisung Spalte mit variabler

ich eine Frage über Mysqli Prepared Statements habe ich einige Dinge ausprobiert, aber hat nicht funktioniert. Mein Code muss eine Abfrage mit einer benutzerdefinierten Variablen als Spalte aktualisieren.

Ich habe meinen Code unten, Ich hoffe jemand von euch kann mir mit meinem Problem helfen!

$username = 'MyUsername'; 
$rank = 'Administrator'; 
$server = 'Node5'; 

$stmt = $connection->prepare("UPDATE staff_members SET ?=? WHERE Username=? LIMIT 1"); 
$stmt->bind_param("sss", $server, $rank, $username); 
$stmt->execute(); 

Mit freundlichen Grüßen, Rabascm

Antwort

1

Innerhalb Prepared Statements dies unmöglich ist. Wenn Sie dies tun möchten, müssen Sie zunächst eine Variablen-Zeichenfolge mit dem 'Server' deklarieren und danach die soeben erstellte Variable in Ihrer vorbereiteten Anweisung platzieren.

So wäre es etwa so aussehen:

$sqlString = "UPDATE staff_members SET $server=? WHERE Username=?"; 
$stmt = $connection->prepare($sqlString); 
$stmt->bind_param("ss", $rank, $username); 
$stmt->execute(); 

Ich hoffe, ich erklärte genug, und ich hoffe, dass dies für Sie klar ist?

+0

Ja, du bist wirklich gut, es hat funktioniert! Ich danke dir sehr – Rabascm

Verwandte Themen