Laravel Error: SQLSTATE[HY000]: General error: 1 near "?"
Laravel Error: SQLSTATE[HY000]: General error: 1 near "?"
无论我如何重组路线,我总是从函数中收到此错误:
(2/2) 查询异常
SQLSTATE[HY000]:一般错误:“?”附近有 1 个:语法错误(SQL:select * 来自制造商 asc 的产品订单)。
我使用的代码如下:
function get_sort($type,$sort){
$sql = "select * from product order by ? ?";
$products = DB::select($sql,array($type,$sort));
return $products;
}
请查看问题的附件图片。任何帮助将不胜感激。
您不能在准备好的语句中绑定关键字和列。最好改用某种白名单。
$columns = ['id', 'name', 'price'];
$type = in_array($type, $columns) ? $type : 'name';
$sort = $sort === 'DESC' ? 'DESC' : 'ASC';
$sql = "select * from product order by $type $sort";
无论我如何重组路线,我总是从函数中收到此错误: (2/2) 查询异常 SQLSTATE[HY000]:一般错误:“?”附近有 1 个:语法错误(SQL:select * 来自制造商 asc 的产品订单)。
我使用的代码如下:
function get_sort($type,$sort){
$sql = "select * from product order by ? ?";
$products = DB::select($sql,array($type,$sort));
return $products;
}
请查看问题的附件图片。任何帮助将不胜感激。
您不能在准备好的语句中绑定关键字和列。最好改用某种白名单。
$columns = ['id', 'name', 'price'];
$type = in_array($type, $columns) ? $type : 'name';
$sort = $sort === 'DESC' ? 'DESC' : 'ASC';
$sql = "select * from product order by $type $sort";