我正在尝试使用准备好的语句来搜索一个我不知道需要搜索多少个参数的数据库。因此,以下示例检查列“标题”是否包含两个变量
$stmt = $con->prepare("SELECT title FROM news WHERE title LIKE %?% AND title LIKE %?%");
如果我想检查第三个变量怎么办。我可以附加到准备好的语句吗?到目前为止,我唯一的解决方案如下,这太可怕了,因为我不知道最大变量数。
$no_of_variables = 3;
if($no_of_variables == 1){
$stmt = $con->prepare("SELECT title FROM news WHERE title LIKE %?%");
} else if($no_of_variables == 2){
$stmt = $con->prepare("SELECT title FROM news WHERE title LIKE %?% AND title LIKE %?%");
} else if($no_of_variables == 3){
//etc
}
如果可能的话,我将不胜感激使用准备好的陈述的更好方法。谢谢
忽然笑