Wie bereite ich eine Anweisung mit Bindvalue und % vor?
Frage
Ja, ich habe ein Problem, wenn ich versuche, Bindvalues für Variablen zu verwenden, die vorher so aussahen:
users.firstname LIKE '$firstname%'
Jetzt sieht es so aus:
users.firstname LIKE ':firstname%'
Aber es funktioniert nicht, habe auch Folgendes versucht:
users.firstname LIKE :firstname%
Und es ist ein Syntaxfehler aufgetreten.
Was ist hierfür die richtige Lösung?Ich habe auch darüber nachgedacht, das % im bindValue(:firstname, $firstname%) hinzuzufügen, aber ich muss das :firstname auch an anderen Stellen verwenden, die das % nicht haben sollten.
Hilfe, danke
Lösung
Ok, füge das hinzu %
zum gebundenen Wert:
users.firstname LIKE :firstname
Und dann
$stmt->bindValue(':firstname', $firstname . '%');
Aber da Sie sagen, dass Sie es verwenden müssen :firstname
Benennen Sie diese Instanz an anderen Stellen einfach anders:
users.firstname LIKE :firstnamewild
Und dann
$stmt->bindValue(':firstnamewild', $firstname . '%');
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow