0

我只是写了这段代码,直到我意识到如果不将 serialnr 更改为不存在的东西,我将无法更新字段。

if (isset($_POST['update']))
{
    $errormsg = "";
    $errorcontrol = "
                SELECT serialnr
                FROM item
                WHERE serialnr='$_POST[serialnr]'
                ";
    $result=mysql_query($errorcontrol);
    if (mysql_num_rows($result) == 1)
    {
        $errormsg= "<p id='notification'>Duplicate entry set.</p>";
    }
    else
    {
        $UpdateQuery = "
                    UPDATE item SET 
                    itembrand='$_POST[itembrand]', serialnr='$_POST[serialnr]', itemname='$_POST[itemname]', itemgroupid='$_POST[itemgroupid]', addinfo='$_POST[addinfo]'
                    WHERE itemid='$_POST[itemid]'
                    ";
        mysql_query ($UpdateQuery)  ;
    }
}

如果我将此代码用于“添加新”部分,它会正常工作:当它已经存在时不要添加。

但是当 serialnr 已经存在时,我该如何进行更新?

4

1 回答 1

0

以下行的语法必须是,您错过了$_POST键中的引号,

 1.    $errorcontrol = "
            SELECT serialnr
            FROM item
            WHERE serialnr='$_POST['serialnr']'
            ";



2.     $UpdateQuery = "
                UPDATE item SET 
                itembrand='$_POST['itembrand']', serialnr='$_POST'[serialnr']', itemname='$_POST[itemname]', itemgroupid='$_POST['itemgroupid']', addinfo='$_POST['addinfo']'
                WHERE itemid='$_POST['itemid']'
于 2012-10-22T14:29:04.140 回答