今天把项目上传到服务器后出现的问题,改变状态(0.1)的切换.之前的代码如下: public function Something() { if (IS_AJAX) { $id = I('post.id'); $arrt = I('post.attr'); $isshow = $this->product->where("id='$id'")->getField($arrt);//获取状态(1 OR 0) if($this->product->where("id='$id'")->setField($arrt,!$isshow)){//设置状态为反 $info = array('i' => 1, 'msg' => "改变状态成功"); }else{ $info = array('i' => 0, 'msg' => "改变状态失败"); } $this->ajaxReturn($info); } }以上代码在本地测试一切正常 但是到了服务器后将0设置为1正常,但是将1设置为0的时候SQL报错 SET is_top='' 也就是!$isshow可以将1取反为0 但是无法将0取反为1,结果为 ' '后来不得已将$isshow使用三元赋值$isshow=$isshow==1?0:1;抛弃了之前的!$isshow的写法.bug解决了疑问主要是?为什么在linux环境下面 !$isshow取反可以由0取到1 但是1取到0则无法取出来呢?请大佬解答,新手一个谢谢大家.
1 回答
- 1 回答
- 0 关注
- 455 浏览
添加回答
举报
0/150
提交
取消