简单的PHP错误

时间:2011-11-11 17:11:07

标签: php mysql error-handling

我有一个简单的PHP错误,我找不到解决方案。我插入以下代码:

    <?php
session_start();
require_once '../includes/db.php';  

$address1 = $_REQUEST["address1"];
$address2 = $_REQUEST["address2"];
$city = $_REQUEST["city"];
$postcode = $_REQUEST["postcode"];

mysql_query("UPDATE customers SET address1='$address1', address2='$address2', city='$city', postcode='$postcode' WHERE username = '".$_SESSION['username']."')")

or die(mysql_error());

?> 

此代码给出了以下错误:

  

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

第1行是以下我认为它与sql语句无关:

    <?php
session_start();
?>

谢谢大家! :)

6 个答案:

答案 0 :(得分:5)

更改该行:

mysql_query("UPDATE customers SET address1='$address1', address2='$address2', city='$city', postcode='$postcode' WHERE username = '".$_SESSION['username']."')")

到那个

mysql_query("UPDATE customers SET address1='$address1', address2='$address2', city='$city', postcode='$postcode' WHERE username = '".$_SESSION['username']."'")

查询中有一个额外的右括号。

答案 1 :(得分:3)

  1. 可向bobby-tables
  2. 开放
  3. 请确保:

    UPDATE customers SET address1='$address1', address2='$address2', city='$city', postcode='$postcode' WHERE username = '".$_SESSION['username']."')
    

    是一个真实的查询 您现在可以看到它不是因为末尾的额外)

答案 2 :(得分:3)

在查询结尾处有一个),不应该在那里。

mysql_query("UPDATE customers SET address1='$address1', address2='$address2', city='$city', postcode='$postcode' WHERE username = '".$_SESSION['username']."'")

答案 3 :(得分:2)

mysql_query("UPDATE customers SET address1='$address1', address2='$address2', city='$city', postcode='$postcode' WHERE username = '".$_SESSION['username']."')") or die(mysql_error());

SQL查询结束时有一个迷路)

应该是:

mysql_query("UPDATE customers SET address1='$address1', address2='$address2', city='$city', postcode='$postcode' WHERE username = '".$_SESSION['username']."'") or die(mysql_error());

答案 4 :(得分:2)

更改

$_SESSION['username']."')")

$_SESSION['username']."'")

答案 5 :(得分:0)

我想你最后忘了放一个分号了?

下面的右边:

mysql_query(" UPDATE customers SET address1='$address1', address2='$address2',city='$city', postcode='$postcode' WHERE username ='". $_SESSION['username']."'");