PHPform不更新SQL Row

时间:2013-12-05 17:49:06

标签: php mysql sql

我正在尝试仅使用member_id更新sql ROW,这是我当前的代码。

 if ($con = mysql_connect($host, $username, $password)) {
    if (mysql_select_db($db_name)) {
        $sql = "UPDATE members set
        ussd_office = '".$ussd_office."',
        ussd_email = '".$ussd_email."',
                    ussd_e1cell4 = '".$ussd_e1cell4."',

        WHERE member_id='$member_id'" ; // This is where my problem lies I presume

if (mysql_query($sql, $con)) {
            $insertSuccessful = true;
        } else {
            echo $sql;
            print_r($_POST);
            echo "\n" . mysql_error($con);
            echo "mysql err no : " . mysql_errno($con);

要获取我的表单POST信息,我将其放置如下;

 $member_id = $_REQUEST['member_id'];
 $ussd_surname = $_REQUEST['ussd_surname'];
 $member_msisdn = $_REQUEST['member_msisdn'];
 $ussd_office = $_REQUEST['ussd_office'];

这是我得到的错误:

  

您的SQL语法有错误;查看与您的MySQL对应的手册        服务器版本,用于在38mysql行'WHERE member_id ='''附近使用的正确语法        错误号码:1064

通过查看错误,我认为member_id未被拉到我的字符串的WHERE部分,并且PHP不知道要更新的行。我该如何更正我的代码?

1 个答案:

答案 0 :(得分:2)

删除WHERE之前的逗号。

"UPDATE members set
        ussd_office = '".$ussd_office."',
        ussd_email = '".$ussd_email."',
                    ussd_e1cell4 = '".$ussd_e1cell4."'
        WHERE member_id='$member_id'" 

查询中的变量和REQUEST中的变量不匹配。