AnN*_*LaI 7 full-text-search cakephp-1.3 cakephp-2.0
我在我的业务控制器中使用普通搜索功能.但是现在需要用paginate实现FULL TEXT SEARCH可以任何人给出想法或样本吗?我正在使用MySQL和MyISAM标签
这个我的表结构,标记为粗体的字段需要在搜索中使用
CREATE TABLE IF NOT EXISTS businesses (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
created date NOT NULL,
modified datetime NOT NULL,
user_id bigint(20) NOT NULL,
slug varchar(255) NOT NULL,
**`name` varchar(255) NOT NULL,**
**street_name varchar(255) DEFAULT NULL,**
**shopping_center varchar(255) DEFAULT NULL,**
state_id int(10) NOT NULL,
suburb_id int(10) NOT NULL,
zip_code varchar(12) DEFAULT NULL,
website varchar(250) DEFAULT NULL,
email varchar(255) DEFAULT NULL,
phone_no varchar(255) NOT NULL,
mobile_no varchar(255) DEFAULT NULL,
fax varchar(255) DEFAULT NULL,
is_active tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (id)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
Run Code Online (Sandbox Code Playgroud)
你之后创建了FULLTEXT索引它不是从正常PAGINATE条件的不同,在所有的,你只需要更多的手动有点构建你的SQL,最重要的手动逃跑用户输入.
$query = 'foobar'; // the user input to search for
$escapedQuery = $this->Business->getDataSource()->value($query);
$this->paginate['conditions'] = array("MATCH (Business.name) AGAINST ($escapedQuery)");
$businesses = $this->paginate();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3891 次 |
| 最近记录: |