0
<?php        
$colname_subselect = "-1";
if (isset($_POST['title'])) {
    $colname_subselect = $_POST['title'];
}
mysql_select_db($database_donedeal, $donedeal);
$query_subselect = sprintf("SELECT * FROM subcategories WHERE subcatename LIKE %s");
?>

我正在尝试显示从上一页发布到 categories.php 页面的标题中的建议类别,例如,在上一页字段名称标题中包含文本:

## I Want My Motor Car To Sell##

提交后,它将转到我在上面写的查询的 categories.php。使用 LIKE 功能,当我只写一个关键字时,我能够获得建议的类别,例如我在上一页的标题字段中写了汽车,因此在 categories.php 页面中,建议的类别将显示哪些包含汽车关键字。

不,我想要的是当我发布完整的广告帖子标题时

## I Want My Motor Car To Sell##

我如何显示建议的类别,如上面的标题包含电机和汽车关键字,所以它应该显示在 categories.php 类别中包含汽车和电机关键字?有我吗?

我正在使用 innodb 所以 MATCH 方法将不起作用,任何其他更喜欢的方法将不胜感激...

4

1 回答 1

0
 $colname_subselect = "-1";
if (isset($_POST['title'])) {
$colname_subselect = $_POST['title'];
}
mysql_select_db($database_donedeal, $donedeal);
$queryString = trim(implode('or subcatename  like ',explode(' ',$colname_subselect )), 'or');
$query_subselect = sprintf("SELECT * FROM subcategories WHERE " . $queryString  );

请注意,您可能必须转义字符串才能停止 sql 注入。

于 2012-12-19T09:04:58.900 回答