表单请求电子邮件(可选)
<select name="mail">
<option value="gmail">@gmail</option>
</select>
并搜索用户输入的电子邮件
$email = $_POST["email"];
我在数据库中进行查询,其中一个条件如下:
AND mail = '$email'
但是,此电子邮件可能未填写在表单上(不是必需的)
如果它为空,如何添加通配符并列出所有电子邮件?
我尝试过类似的事情:
<select name="mail">
<option value="">ALL</option>
</select>
和
AND mail = '%$email'
但它不起作用。
有人可以帮助我吗?
答案 0 :(得分:0)
创建没有此检查的查询,然后有条件地添加检查:
if (!empty($email)) {
$query .= " AND mail = '$email';
}
但是,由于SQL注入,您确实应该避免将变量替换为SQL查询,而是使用参数化查询。有关动态构建查询的一般方法,请参阅Search Form with One or More (Multiple) Parameters。