【发布时间】:2012-10-06 13:14:00
【问题描述】:
我将用户的输入分解为数组,然后在数据库中搜索它们,但如果用户输入空格作为结果,它将显示有空间的表的整行我怎样才能使它正确?
if(isset($_POST['submit'])){
$keywords = explode(" ", $_POST["search"]);
for ($i=0; $i<count($keywords); $i++) {
$query = "SELECT * FROM mp3s " .
"WHERE (artist LIKE '%".$keywords[$i]."%'
OR genre LIKE '%".$keywords[$i]."%'
OR album LIKE '%".$keywords[$i]."%'
OR filename LIKE '%".$keywords[$i]."%'
) ";
$sql = mysql_query($query) or die(mysql_error());
}
【问题讨论】:
-
使用 trim() 删除空格...当心 SQl 注入
-
mysql_real_escape_string()。或者,使用 PDO。 -
如果我使用 trim 可以把它们做成一个数组吗?
标签: php mysql string search keyword