我想構建一個搜索查詢。我得到以下錯誤,它似乎SQL語法錯誤。Laravel 5.3中的SQL搜索查詢錯誤
SQLSTATE [HY093]:無效的參數號(SQL:SELECT * FROM產品 地方風格=摘要,摘要和主題=?)
爲什麼發生這個錯誤? 如何弄清楚?
我的代碼如下
if (isset($request->search)) {
//GET ALL INPUT FROM THE REQUEST
$query_strings = $request->all();
//PULL OUT ANY EMPTY FIELD FROM THE REQUEST
$filtered_array = array_filter($request->all());
//remove the last item
array_pop($filtered_array);
//BUILD A QUERY
$sql = array();
$values = array();
$x = 1;
foreach ($filtered_array as $key =>$value) {
if($x < count($filtered_array)){
$sql[]=" $key = ? and ";
$values[] =" $value , ";
} else {
$sql[]=" $key = ? ";
$values[] =" $value ";
}
$x++;
}
$fields = join(' ', $sql);
$v = join(' ',$values);
dd(\DB::select("select * from products where {$fields} ", [$v]));
}
這是你正在談論的Laravel,你沒有使用它:(你也可以解釋一下你在哪裏得到一個錯誤,你會得到什麼錯誤。 – devk