我有一个简单的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();
?>
谢谢大家! :)
答案 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)
请确保:
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']."'");