我使用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) –