0

我需要有关此代码的帮助:

    if (isset($_POST['aboutme'])) {
$aboutme = $_POST['aboutme'];
$aboutme = mysql_real_escape_string($aboutme);
mysql_query("UPDATE `users` SET `about_me`='" . $aboutme . "' WHERE `username`='" . $usn . "' LIMIT 1") or die(mysql_error());
}

我不知道为什么它不起作用,但它没有进入正确的单元格来改变它。这是文本区域:

<textarea id="aboutme" name="aboutme" rows="4" cols="50"><?php echo "$abme"; ?></textarea>

我不知道这里发生了什么,因为没有错误出现。

http://gyazo.com/f36f04c014bb229c1be27cc7a9e5072f.png?1363328064

4

1 回答 1

1

我强烈建议切换到 mysqli。

mysql_real_escape_string() 也需要一个活动的数据库连接

所以你应该先连接到数据库,否则 mysql_real_escape_string() 将返回一个空字符串

调试:

   if (isset($_POST['aboutme'])) {
        $aboutme = $_POST['aboutme'];
        $aboutme = mysql_real_escape_string($aboutme);
        $query = "UPDATE `users` SET `about_me`='" . $aboutme . "' WHERE `username`='" . $usn . "' LIMIT 1";

       mysql_query($query) or die(mysql_error());

}
print_r($query);

如果表单未正确发布(未定义变量 $query),这将允许您查看查询并触发错误。

你可以在 mysql 上运行查询,如果它输出它来查看结果;

于 2013-03-15T06:12:34.670 回答