ThinkPHP数据多条件查询代码问题?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThinkPHP数据多条件查询代码问题?相关的知识,希望对你有一定的参考价值。
代码如下:数据库表有文章article,用户user,文章付费表payread。
$article_list = Db::name('article')->alias('a')->join('user u', 'u.id=a.uid')->join('payread f', 'f.fid=a.id')->where('a.open', 1)->field('a.*,u.username,u.userhead,f.score')->order('a.id desc')->paginate($this->
文章付费表payread里面只有付费文章的id。
现在主要问题是我加了文章付费表查询后,判断文章是否免费,但原来免费的文章都不显示了,只显示付费的文章。我想要能够同时显示免费和付费的文章。就是不知怎么搞!
不行,提示这个
method not exist:think\db\Query->leftJoin
可以了,语法格式写错了
join('word w','a.id = w.artist_id','RIGHT')
thinkphp where里如何加两个判断条件求大神!
当前我的where里有了一个
where('pid='.$prz[$c]['id'][$key]['id'] )这个判断条件,如何在里面在加一个reend=1呢!
where('pid='.$prz[$c]['id'][$key]['id'] and ‘reend=1’)这样没有用!
以下是源代码!
$product=D('Product');//产品列表数据
$prod=D('Prod');//机构列表
$prz=$prodn;
foreach ($prz as $c => $va)
$prz[$c]['id']=$prod->where('pid='.$va['id'])->select();
foreach ( $prz[$c]['id'] as $key => $value)
$prz[$c]['id'][$key]['id'] = $product->where('pid='.$prz[$c]['id'][$key]['id'] )->order("eid desc")->select();
where('pid='.$prz[$c]['id'][$key]['id'] )
改
$where = array();$where['pid'] = $prz[$c]['id'][$key]['id'];
$where['reend'] = 1;
$prz[$c]['id'][$key]['id'] = $product->where($where)->order("eid desc")->select();本回答被提问者采纳 参考技术B $where=array('字段名'=>'条件1','字段名'=>'条件2');$this–>where($were)后面的就不写了追答
没注意看,把$this换成模型,你应该懂的。手机写写错了,抱歉。条件以数组的形式来写
参考技术C 最后再来个预处理 参考技术D 数组以上是关于ThinkPHP数据多条件查询代码问题?的主要内容,如果未能解决你的问题,请参考以下文章
ThinkPHP中查询数据库where()中的条件必须包含主键值吗
thinkphp3.2.3 查询时使用where+select查询出来的比find查询多一个空数组