Php-Mysql更新语句不起作用(语法正确)



我不知道为什么我的数据库没有更新。代码运行并显示成功消息,但数据库保持不变。我已经检查了很多次语法,并添加了mysql_error,但我不确定哪里出了问题。

if (!empty($username) && !empty($extension) && !empty($location)) {
                            $q2 = mysql_query("SELECT * FROM `intranet`.`mmg_locations` WHERE `id`='{$location}' ") or die (mysql_error()) ;
                            $r2 = mysql_fetch_assoc();
                            $q = mysql_query("UPDATE `intranet`.`mmg_cpd_users` SET `name` = '{$username}', `extension` = '{$extension}', `location`='{$location}' 
                                            WHERE `id` = '{$id}' ") or die (mysql_error());

                           if ($q) {
                            echo '<p style="color: green;">The user '.$username.' has been successfully updated.</p>';
                            }
}

执行前在浏览器中打印$q。从浏览器复制整个UPDATE语句,并直接在phpmyadmin查询浏览器中执行

 $q = "UPDATE `intranet`.`mmg_cpd_users` 
       SET `name` = '{$username}', 
       `extension` = '{$extension}', 
       `location`='{$location}'
        WHERE `id` = '{$id}' ";
    echo $q;
    die();
    if ($q) {... }

最新更新