PHP在数据库中搜索多行

时间:2015-01-08 22:06:48

标签: php search mysqli

我想用PHP和MySQL从一个数据库中搜索多个列。目前我有这个工作。

这是我的表格:

  <form action="products.php" method="POST">
  Search: <input type="text" name="search" />
  <input type="submit" value="submit"/>
  </form>

这是我目前的工作查询:

$query = "SELECT * FROM `GraphicsCards` WHERE `Brand` LIKE '%". $search . "%'";
$run = mysqli_query ($connection, $query);

正如您所看到的,我的查询正在搜索我的数据库,以查看输入的用户搜索是否与列中的任何内容相匹配&#34; Brand&#34;。

我还有其他专栏,如&#34; Model&#34; &#34;价格&#34;等等,并希望能够搜索那些以及&#34;品牌&#34;。是否可以这样做是一个查询?

另外我已经尝试过&#39; AND&#39;和&#39;或者&#39;还有&#39; || &#39;但它们不起作用。

2 个答案:

答案 0 :(得分:4)

OR将起作用,您只需要正确执行。

$query = "SELECT * FROM `GraphicsCards`
    WHERE `Brand` LIKE '%". $search . "%'
        OR `Model` LIKE '%" . $search . "%'
        OR `Price` LIKE '%" . $search . "%'";

仅供参考,BrandModelPrice是列,而不是行。

答案 1 :(得分:1)

你应该尝试:

$query = "
    SELECT * FROM `GraphicsCards`
    WHERE
        `Brand` LIKE '%". $search . "% OR `Model` LIKE %'" . $search . "%";
$run = mysqli_query ($connection, $query);

让我知道它是如何运作的。