在mySQL表中搜索字符串并返回其所在字段的名称

时间:2011-06-06 08:52:24

标签: php mysql

我有一个包含3列的表

标题|副标题|体

我需要搜索表中的所有行,并返回包含搜索词的列。我怎么能这样做?

最终,这个想法是一个基本的“查找和替换”系统。

1 个答案:

答案 0 :(得分:1)

类似的东西:

query("SELECT * FROM table WHERE MATCH(title,subtitle,body) AGAINST (?)",
                                                $yourSearchTerm); //> assuming PDO

while($row = fetch_assoc($query)) {
   foreach( $row as $k=>$v ) {
       if (strpos($v,$yourSearchTerm)!==false)
          echo 'The search word was found in the column: '.$k.'<br />';
   }
}

如果你没有pdo

  mysql_query("SELECT * FROM table WHERE MATCH(title,subtitle,body) AGAINST ('$yourSearchTerm')");

然后使用

   mysql_fetch_assoc();