脚本宝典收集整理的这篇文章主要介绍了CakePHP使用%like%查找查询,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
$this->paginate = array( 'limIT'=>5,'order'=>'Note.datetime DESC','conditions' => array( 'Note.status'=>1,'OR' => array( 'Note.title LIKE' => '%'. $q . '%','Note.content LIKE' => '%'. $q . '%' ) ) );
标题:Lorem ipsum
内容:Lorem ipsum dolare
并寻找’lorem’
它会发现很好.但如果我搜索’lorem dolare’,它将找不到它.
我怎么做?
编辑:如果我使用FULLTEXT这会工作吗?
$this->paginate = array( 'limit'=>5,'OR' => array( 'MATCH(Note.title) AGaiNST('.$q.' IN BOOLEAN MODE)','MATCH(Note.content) AGAINST('.$q.' IN BOOLEAN MODE)' ) ) );
编辑2:
尝试以上操作时出现此错误:
Error: sqlSTATE[42000]: Syntax error or access violation: 1064 You have an error in your sql Syntax; check the manual that corresponds to your MysqL server version for the right Syntax to use near 'dolor IN BOOLEAN MODE)) OR (MATCH(`Note`.`content`) AGAINST(lorem dolor IN BOOLE' at line 1 sql Query: SELECT `Note`.`id`,`Note`.`title`,`Note`.`excerpt`,`Note`.`content`,`Note`.`datetime`,`Note`.`user_id`,`Note`.`slug`,`Note`.`status`,`Note`.`topic_id`,`User`.`id`,`User`.`email`,`User`.`Firstname`,`User`.`lastname`,`User`.`password`,`User`.`status`,`Topic`.`id`,`Topic`.`title`,`Topic`.`slug` From `db52704_driz2013`.`notes` AS `Note` LEFT JOIN `db52704_driz2013`.`users` AS `User` ON (`Note`.`user_id` = `User`.`id`) LEFT JOIN `db52704_driz2013`.`topics` AS `Topic` ON (`Note`.`topic_id` = `Topic`.`id`) WHERE `Note`.`status` = 1 AND ((MATCH(`Note`.`title`) AGAINST(lorem dolor IN BOOLEAN MODE)) OR (MATCH(`Note`.`content`) AGAINST(lorem dolor IN BOOLEAN MODE))) ORDER BY `Note`.`datetime` DESC LIMIT 5
$this->paginate = array( 'limit'=>5,'conditions' => array( 'Note.status'=>1,'OR' => array( "MATCH(Note.title) AGAINST('".$q."' IN BOOLEAN MODE)","MATCH(Note.content) AGAINST('".$q."' IN BOOLEAN MODE)" ) ) );
换句话说,用引号括起搜索条件
编辑ndm的建议是有道理的
$this->paginate = array( 'limit'=>5,'OR' => array( 'MATCH(Note.title) AGAINST(? IN BOOLEAN MODE)' => $q,'MATCH(Note.content) AGAINST(? IN BOOLEAN MODE)' => $q ) ) );
以上是脚本宝典为你收集整理的CakePHP使用%like%查找查询全部内容,希望文章能够帮你解决CakePHP使用%like%查找查询所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。