我有一个搜索SQL数据库的php文件。它从文本框中获取一个字符串,并尝试将其与数据库的各种属性相匹配。以下是执行搜索的代码:
if ($filter['meta_info']) {
$search_string = $filter['meta_info'];
unset($filter['meta_info']);
$m_intSortField = null;
$m_strWhere .= (($m_strWhere) ? " AND " : "")."(MATCH (`courses`.`assigned_id`,`courses`.`title`,`courses`.`author`,`courses`.`keywords`,`courses`.` abstract`,`courses`.`objective`,`courses`.`summary`,`courses`.`copyright`,`courses`.`notes`) AGAINST ('".mysql_escape_string($search_string)."' IN BOOLEAN MODE))";
}
我的问题是,我希望它返回与分配的ID部分匹配的课程,而不仅仅是完全匹配。谁知道我怎么能这样做?
答案 0 :(得分:2)
关闭mysql选项的严格模式,或使用LIKE。
SELECT id,来自LESSONS的名称,其名称为LIKE“English%”;
返回
| id | Name
| 2 | English Literature
| 8 | English Language