php的where条件可以出现数组么,thinkphp的where条件无法用数组,求分析原因

如果我这样写,可以查询出数据::$admin_data=$admin->where('username="'.$username.'"')->find();

如果这样写,网页直接"无法显示此网页":$admin_data=$admin->where(array('username'=>$username))->find();

求分析原因。

1、thinkphp版本是3.13。

2、就是测试的代码,不考虑我别的代码干扰。

回复讨论(解决方案)

PHP版本:5.2

机器上装过IIS,前几天被我卸载了。

$arr['username']=>$username;

$admin_data=$admin->where($arr)->find();

试一试

$arr['username'] = $username;

$admin_data=$admin->where($arr)->find();

试一试

第一个传进去的并非是array,只是个字符串

$arr['username'] = $username;

$admin_data=$admin->where($arr)->find();

试一试

还是不行。

第一个传进去的并非是array,只是个字符串

可能我没表达清楚,我的意思是where里,用字符串形式查询时正常的,用数组形式就会“无法显示此网页”

看一下find()方法里面接收的参数是什么??

你看下username字段的类型是什么

查看 thinkPHP运行记录 看看是哪里错了,或者 从新建立一个PHP文件 重新手动输入一次。 有些错误很蛋疼的,

$admin_data=$admin->query("select * from hao_admin");

$admin_data=$admin->where(array('username'=>$username))->find();

第一种查询 正常有数据。

第二种查询 直接"该页无法显示"。

查看apache错误日志:

PHP Warning: Directive 'register_globals' is no longer supported in PHP 6 and greater in Unknown on line 0

PHP Warning: Directive 'register_long_arrays' is no longer supported in PHP 6 and greater in Unknown on line 0

PHP Warning: Directive 'magic_quotes_gpc' is no longer supported in PHP 6 and greater in Unknown on line 0

之前有看过日志,但是对这些错误没太注意。

通过phpinfo()看到PHP版本是PHP6.0.0。重装了PHP5.2.6之后,OK了。

还有这种事?

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值