2012-10-10 66 views
0

我收到的错误:您的SQL语法错误;检查对应于你的MySQL服务器版本使用附近的“释放= 2012-09-02,平台= Android,链接=`play.php游戏= G?”第6行使用UPDATE/SET的SQL语法错误

代码正确的语法手册:

$sql = "UPDATE 
      GameInformation 
     SET 
      keyIndex=`GameTest`, 
      name=`Game Test`, 
      release=`2012-09-02`, 
      platforms=`Android`, 
      link=`play.php?game=GameTest`, 
      icon=`img/thumb_gametest.png`, 
      thumb=`img/thumb_mini_gametest.png`, 
      swf=`swf/GameTest.swf`, 
      height=`500`, 
      width=`920` 
     WHERE 
      keyIndex=`GameTest2`"; 

$query = mysql_query($sql); 

if (!$query) exit (mysql_error()); 

我一直在尝试不同的分隔符(大括号,撇号,引号)在我的设置变量周围没有用。这里有一个保留字吗?

更新[解决],纠正代码:。

$sql = 'UPDATE 
          `GameInformation` 
         SET 
          `keyIndex`="GameTest", 
          `name`="Game Test", 
          `release`="2012-09-02", 
          `platforms`="Android", 
          `link`="play.php?game=GameTest", 
          `icon`="img/thumb_gametest.png", 
          `thumb`="img/thumb_mini_gametest.png", 
          `swf`="swf/GameTest.swf", 
          `height`="500", 
          `width`="920" 
         WHERE 
          `keyIndex`="GameTest2"'; 
      $query = mysql_query($sql); 
      if (!$query) exit (mysql_error()); 
+1

你有tr用'\?'逃避'?'? – Horen

+0

如果你拿出发布区域,它是否运行没有错误?什么类型的发布?我在想这是一个日期格式问题。 –

回答

5

你应该用'对表和列名和“或”内容释放是一个reserved word

UPDATE 
      `GameInformation` 
     SET 
      `keyIndex`="GameTest", 
      `name`="Game Test", 
      `release`="2012-09-02", 
      `platforms`="Android", 
      `link`="play.php?game=GameTest", 
      `icon`="img/thumb_gametest.png", 
      `thumb`="img/thumb_mini_gametest.png", 
      `swf`="swf/GameTest.swf", 
      `height`="500", 
      `width`="920" 
     WHERE 
      `keyIndex`="GameTest2" 
+0

完美。谢谢! –