【发布时间】:2014-09-30 17:47:40
【问题描述】:
我有这段代码:
$result = mysqli_query($con , 'SELECT * FROM messages WHERE group = "'.$_POST['group'].'" ORDER BY date '.$_POST['order'].'');
我不明白为什么它总是让我返回错误。变量 $_POST['group'] 和 $_POST['order'] 不为空。
$_POST['group']='PHP'
$_POST['order']='DESC'
与数据库的连接也是正确的。
【问题讨论】:
-
添加一个
echo mysqli_error()...并且永远不要直接在你的SQL语句中使用不安全的POST变量。 -
你说的是什么意思:“Ads an echo mysqli_error()”
-
这:
ORDER BY date可能是问题所在。试试:ORDER BY 'date'. -
@Montoolivo 对不起;在您的查询后添加
echo mysqli_error();。它将从您失败的 MySQL 语句中输出错误消息。 -
这里是错误信息:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 'group = "All" ORDER BY date ASC' 附近使用正确的语法