我正在使用PDO准备的查询来搜索学生的表格
用户可以选择他们希望搜索的字段 - 名字,姓氏,出生日期,性别或这些字段的任意组合。
我正在尝试构建一个由准备好的语句执行的数组。
e.g。如果用户选择lastname和dob,我该如何生成以下数组?
treeView.DataContext = new SolutionExplorerViewModel();
如果我按常规添加值:
array(':lastname' => $lastname, ':dob' => $dob);
执行查询:
$my_array[] = "[:lastname] => $lastname";
$my_array[] = "[:dob] => $dob";
我收到错误:
警告:PDOStatement :: execute():SQLSTATE [HY093]:参数无效 number:参数未在C:\ htdocs \ pdo \ students \ search.php中定义 在第67行
感激不尽的任何建议
答案 0 :(得分:0)
使用字符串索引。
Activity
答案 1 :(得分:-2)
示例:
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < :calories AND colour = :colour');
$sth->execute(array(':calories' => $calories, ':colour' => $colour));
ex:$my_array[':calories']=>$calories
根据您的格式,它将创建如下数组。
Array
(
[0] => :lastname =>
[1] => :dob =>
)
所以更新格式如下。
$my_array=array(":lastname" => $lastname,":dob" => $dob);