尝试通过相同的搜索按钮返回两种不同的值类型。我正在尝试搜索的两个值是字符串标题和MySQL数据库中自动递增的id。
我不确定哪种方法是通过同一搜索框包含两个搜索参数的最佳方法。
有人可以帮忙吗?
$search = mysql_real_escape_string(trim($_POST['keywordsearch'])); //removes whitespace in searchbox
$find_titles = mysql_query ("SELECT * FROM `catalogue` WHERE `keywords` LIKE'%$search%' OR WHERE `id` LIKE'%$search'");
//Searches for anything with inputted character
?>
<h1>Search Results</h1>
<table id='table'>
<table width="600" border="1" cellpadding="2" cellspacing="2">
<tr>
<th>ID</th>
<th>Title</th>
<th>Stock</th>
<th>Cost</th>
</tr>
<?php
while ($row = mysql_fetch_assoc($find_titles))
{
echo "<tr>";
echo "<td>".$row['id']."</td>";
echo "<td>".$row['title']."</td>";
echo "<td>".$row['quantity']."</td>";
echo "<td>".$row['price']."</td>";
echo "</tr>";
}// end While
echo "</table>"; ?>
}
?>
错误消息:警告:mysql_fetch_assoc()期望参数1为资源,第34行中给出布尔值**(while($ row = mysql_fetch_assoc($ find_titles)
答案 0 :(得分:0)
无需添加WHERE
两次。一次使用它。
$find_titles = mysql_query ("SELECT * FROM `catalogue` WHERE `keywords` LIKE '%$search%' OR `id` LIKE '%$search'");
还建议您在while循环
之前添加这样的错误报告if(!$find_titles){
die(mysql_error());
}