我在屏幕上显示此错误,我一直在尝试调试。
“您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以便在第1行''='testname''附近使用正确的语法”
我使用的功能如下:
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 />";
}
}
基本上我想要做的是从数据库消息中获取所有数据行,其中'to'是会话的用户名并且其回显。关于我做错什么的任何想法?感谢
答案 0 :(得分:10)
答案 1 :(得分:1)
to是一个保留字。试试这个:
$result = mysql_query("SELECT * FROM $tbl_name WHERE `to` = '$username' ")
or die(mysql_error());
一般情况下,尽量避免使用...之间,...之间的小词。只是为了防止这种问题。更好的解决方案是使用字段名称:“receiver”或“message_to”或类似的东西
答案 2 :(得分:0)
TO是MySQL中的保留字。使用反引号将其分开。
SELECT * FROM $tbl_name WHERE `to` = '$username'
答案 3 :(得分:-1)
是我相信的保留字。尝试更改为[到] 编辑:完全不确定。我把它放在SQL Server中,看到TO是一个保留字。