0

我正在为我的网站构建一个“edit_post”页面,以便用户可以编辑他们之前发布的内容(duh),我收到“已成功更新数据”的通知,但数据未在 mysql 中更新

<?php

if(isset($_POST['update'])){
$topic_id = $_POST['topic_id'];
$topic_data = $_POST['topic_data'];
$invisipost = isset($_POST['invisipost']) ? $_POST['invisipost'] : 0 ;

$sql = "UPDATE `topics` SET topic_data='$topic_data', invisipost='$invisipost' WHERE topic_id = '$topic_id'" ;

$retval = mysql_query($sql);
if(! $retval )
{
  die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
mysql_close();
}
else
{
}
?>

这是我的表单代码

<form method="post" action="">

这是我要更新的表单中的字段

<textarea name="topic_data" cols="50" rows="3" id="topic_data"><? echo $rows['topic_data']; ?></textarea>

<input type="checkbox" name="invisipost" value="<? echo $rows['invisipost']; ?>">

以及表单提交代码

<input type="submit" name="update" value="Update">

我希望我已经提供了足够的信息。

4

1 回答 1

0

您的查询仍然失败,您看到“成功更新数据”,因为它在 if 语句之外。尝试这个:

if(!$retval){  //query has failed, produce error
    die('Could not update data: ' . mysql_error());
}
else{ //query is successful
    echo "Updated data successfully\n";
    mysql_close();
}
于 2013-07-18T01:32:09.397 回答