我使用PDO的陣列來製作查詢來搜索一個學生的表如何動態地建立一個PDO準備語句
用戶可以選擇哪些領域/ s的他們想要搜索 - 名字,姓氏,出生日期,性別或這些的任何組合。
我想建立一個數組,即將執行的準備語句。
例如如果用戶選擇lastname和dob,我該如何生成以下數組?
array(':lastname' => $lastname, ':dob' => $dob);
如果我添加值按通常:
$my_array[] = "[:lastname] => $lastname";
$my_array[] = "[:dob] => $dob";
並執行查詢:
$stmt = $db_conn->prepare($query);
$stmt->execute($my_array);
我得到一個錯誤:
Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in C:\htdocs\pdo\students\search.php on line 67
任何建議感激收到
顯示'$ query'以及 –
嘗試'$ my_array [ ':名字'] = $姓氏;'和'$ my_array [ ':DOB'] = $ DOB;' – Tony
[如何創建爲更新查詢準備語句](https://phpdelusions.net/pdo_examples/dynamical_update) –