搜索多个变量php/mysqli
我想找出搜索多个变量的最佳方法搜索多个变量php/mysqli,php,variables,mysqli,Php,Variables,Mysqli,我想找出搜索多个变量的最佳方法 include('connection.inc.php'); $column= $_POST['filter'][0][columnName]; $value = $_POST['filter'][0][value]; $stmt = $mysql->prepare("SELECT * from TABLE WHERE $column like '%?%'"); $stmt -> bind_param('s', $value); $stmt->
include('connection.inc.php');
$column= $_POST['filter'][0][columnName];
$value = $_POST['filter'][0][value];
$stmt = $mysql->prepare("SELECT * from TABLE WHERE $column like '%?%'");
$stmt -> bind_param('s', $value);
$stmt->execute();
我希望能够做的是搜索多个列以查找多个术语。
IE:在列名中搜索值“bob”,在列地址中搜索值“boston”
因为列名和值名都是数组中的变量,所以我想知道最好的方法是什么。谢谢 只需在where子句中添加一个附加参数:
$column1 = $_POST['filter'][0][columnName];
$value1 = $_POST['filter'][0][value];
// Add your other variables here
$column2 = $_POST['filter'][1][columnName];
$value2 = $_POST['filter'][1][value];
$stmt = $mysql->prepare("SELECT * from TABLE WHERE $column1=? AND $column2=?");
$stmt -> bind_param('ss', $value1,$value2);
$stmt->execute();
尽管您可能想看看为使用分配变量的方式。根据我的经验,
$\u POST
每个简单变量需要这么多索引是不正常的;必须有更好的方法为您编写代码 请注意,您的bind_param()
在此处无法正常工作,因为您刚刚将$value
插入查询中。改为使用:$stmt=$mysql->prepare(“从表中选择*,其中$column类似“%”)这不正常,但很复杂。我把它简化了。使用AND会起作用,但查询的数量也会有所不同。所以只需要1个,或者我需要4个。