语法错误

时间:2011-06-16 06:22:27

标签: php mysql

$sql="SELECT * FROM 'image_upload' where uid='$uid' ";

我写了这个查询,它显示错误: -

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在''image_upload'附近使用正确的语法,其中uid ='''在第1行

请你纠正它..

8 个答案:

答案 0 :(得分:9)

这将有效:

$sql = "SELECT * FROM `image_upload` where uid='$uid' ";

答案 1 :(得分:4)

对表名使用反引号:

SELECT * FROM `image_upload` ...

答案 2 :(得分:1)

您应该使用反引号(`)而不是单引号(')。事实上,在这种情况下你不应该使用它,因为它不是必需的:

$sql = "SELECT * FROM image_upload where uid='$uid'";

仅当您的表名中包含有趣的字符时才需要反引号,否则会破坏SQL解析器(例如空格)。

并确保您的uid列是文字列(例如charvarchar) - 否则您不应该使用单引号围绕$uid。< / p>

答案 3 :(得分:0)

$ sql =“SELECT * FROM image_upload where uid ='$ uid'”;

答案 4 :(得分:0)

您可以删除单引号,然后重试吗?

SELECT * FROM image_upload where uid='$uid'

答案 5 :(得分:0)

试试这个:

$sql="SELECT * FROM image_upload where uid='".$uid."'";

答案 6 :(得分:0)

$sql="SELECT * FROM `image_upload` where uid='$uid' ";

你已经被纠正了;)

您需要防止SQL注入。请参阅this thread

答案 7 :(得分:-1)

删除image_upload中的单引号 在查询之前 echo $ uid; 然后你就会知道答案