php - 更改 select 语句以在特定条件下返回所有行

标签 php mysql

我有一个选择选项,用户可以在其中选择国家和州。

用户可以选择“所有状态”选项:

<select>state</select>

    search all value=''
    CA value='CA'
    NY value='NY'

查询:

WHERE country=:country && state=:state

如果我想搜索所有,我应该给什么值 state='' <-- search all

最佳答案

谢谢大家,我已经找到解决办法了

if(isset($_GET['state']) && $_GET['state']!=""){
    $state=$_GET['state'];
    $state_statement=" && state=:state";

}else{
    $state_statement="";
}

WHERE country=:country".$state_statement." &&";


if(isset($_GET['state']) && $_GET['state']!=""){$SQL->bindValue(':state', $state, PDO::PARAM_STR);}

因此,如果用户未选择或全选 - value="";该语句不会插入到 SQL 语句中

关于php - 更改 select 语句以在特定条件下返回所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17645555/

相关文章:

php - 在 PHP 中读取文本文件

php - 为什么我的 drupal 表单提交函数没有被调用?

mysql - 条件 SQL

mysql - having 子句与 mysql 中的 where 一起使用

mysql在查找重复项时获取所有记录

javascript - 我正在尝试在页面加载时自动单击一个信号按钮。但不起作用

php - Easyphp & SwiftMailer 4.3 无法发送消息 (PHP/SWIFT)

php - 在 PHP 上美化存储在字符串中的 HTML

html - URL 未拉取索引页

php - Wordpress 使用 MySQL 全文搜索?