次のクエリがあります。
$query = "SELECT * FROM PAS WHERE KLANT_NR = (SELECT KLANT_NR FROM klanten WHERE VOORNAAM = ? AND ACHTERNAAM = ?)";
$stmt = $mysqli->prepare($query)){
$stmt->bind_param("ss", $klantVoornaam, $klantAchternaam);
ただし、これにより次のエラーが生成されます。
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '? AND ACHTERNAAM = ?)' at line 1
2 つの変数は $_POST 文字列です。
奇妙なことに、通常のクエリに '?' の代わりに 2 つの文字列を追加すると、クエリは正常に機能します。準備されたステートメントが機能しない理由がわかりません...