我得到这个错误显示在我的屏幕上,我一直在尝试调试。MYSQL语法错误 - SELECT语句
“您的SQL语法错误;检查对应于你的MySQL服务器版本,在1号线附近使用‘来=‘测试名称’’正确的语法手册”
我的功能即时通讯使用这是如下:
function recentMessages() {
$tbl_name="messages";
$username = $_SESSION['username'];
$result = mysql_query("SELECT * FROM $tbl_name WHERE to = '$username' ") or die(mysql_error());
while ($row = mysql_fetch_row($result))
{
return $row['date']." ".$row['time']." ".$row['from']." ".$row['subject']. "<br />";
}
}
基本上什么即时试图做的是从数据库中的信息,其中谁是它的“为”是会话和回显出来的用户名获得数据的所有行。任何想法做什么即时错误?谢谢
@BrendanLong这是一个正确的观点(当然)逃避变量在SQL,但如果是微不足道的修改会话数据,SQL注入将是至少你的应用程序的后顾之忧。安德鲁 - 考虑有$ username =“'OR 1 = 1或x ='” – AD7six
你应该[escape string data](http://php.net/manual/en/function.mysql-real-escape-string。 PHP)在将其用于数据库之前,即使您认为它可能是安全的,也可以从外部源获得。 –