我想用 PHP 和 MySQL 从一个数据库中搜索多个列。目前我有这个工作。
这是我的表格:
<form action="products.php" method="POST">
Search: <input type="text" name="search" />
<input type="submit" value="submit"/>
</form>
Run Code Online (Sandbox Code Playgroud)
这是我当前的工作查询:
$query = "SELECT * FROM `GraphicsCards` WHERE `Brand` LIKE '%". $search . "%'";
$run = mysqli_query ($connection, $query);
Run Code Online (Sandbox Code Playgroud)
如您所见,我的查询正在搜索我的数据库,以查看输入的用户搜索是否与“品牌”列中的任何内容匹配。
我有其他列,例如“型号”“价格”等,并且希望能够搜索这些以及“品牌”。这是一个查询吗?
此外,我已经尝试过 ' AND ' 和 ' OR ' 以及 ' || '但它们不起作用。
OR 会起作用,你只需要正确地做。
$query = "SELECT * FROM `GraphicsCards`
WHERE `Brand` LIKE '%". $search . "%'
OR `Model` LIKE '%" . $search . "%'
OR `Price` LIKE '%" . $search . "%'";
Run Code Online (Sandbox Code Playgroud)
仅供参考,Brand, Model, 和Price是列,而不是行。