MySQL错误-第1行附近的SQL语法有错误

MySQL错误-第1行附近的SQL语法有错误,mysql,Mysql,MySQL有问题。以下是我得到的错误: 您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以获取第1行“”附近要使用的正确语法 我已经追查到了下面这一行 $result = mysql_query("SELECT prog.* FROM members as memb LEFT JOIN user_program as prog USING (ID) WHERE memb.Username='".mysql_escape_string($_SESSION['loggedin'])."

MySQL有问题。以下是我得到的错误:

您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以获取第1行“”附近要使用的正确语法

我已经追查到了下面这一行

$result = mysql_query("SELECT prog.* FROM members as memb LEFT JOIN user_program as prog USING (ID) WHERE memb.Username='".mysql_escape_string($_SESSION['loggedin'])."' && program_id={$Global['program']}") or die('The Matrix is on fiya'.mysql_error());

但是我不确定是什么原因导致它失败。

是否应该是
$GLOBALS['program']
而不是
$Global['program']

您应该打印出结果字符串,以查看真正传递到MySQL的内容。MySQL扩展已弃用。您至少应该切换到PDO或mysqli。你应该打印出你的查询,以确保你有所有正确的变量。这不是我的代码,我也不是mysql的大师。我不知道你所说的打印结果字符串是什么意思。该错误阻止任何进一步的操作。我不知道如何打印$result,因为我直接在PHPMyAdmin中执行了一个查询,它给出了相同的错误消息。@ChrisHenry“MySQL扩展已弃用”是什么意思?什么扩展?mysql*函数不是核心php的一部分。相反,它们是作为扩展实现的。它们是最早创建的,并已被更新、更快的扩展、PDO和mysqli所取代。如需参考,请参阅此。谢谢你的回答。但还是没有运气。对它是$Global而不是$GLOBALS