php select中的变量赋值,PHP和MYSQL:我如何忽略select中的空变量

好吧,有manu方法这样做,但我找到的最短的方法是创建一个以下形式的数组

$vars = array(

(isset($_GET["var1"]))? " keyword = '". $_GET["var1"] ."' ": null,

(isset($_GET["var2"]))? " author = '". $_GET["var2"] ."' ": null,

(isset($_GET["var3"]))? " date = '". $_GET["var3"] ."' ": null,

(isset($_GET["var4"]))? " forums = '". $_GET["var4"] ."' ": null

);

function myfilterarray($var)

{

return !empty($var)?$var: null;

}

$newvars = array_filter($vars, 'myfilterarray');

$where = join(" OR ", $newvars);

$sql = "SELECT DISTINCT title, description FROM table ".(($where)?"WHERE ".$where: null);

echo $sql;您对http://localhost/?var1=sadfsadf&var2=sadfasdf&var3=asdfasdf的结果

SELECT DISTINCT title, description FROM table WHERE keyword =

'sadfsadf' OR author = 'sadfasdf' OR date = 'asdfasdf'您对http://localhost/?的结果

SELECT DISTINCT title, description FROM table

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值