reply.php 文件用于留言板中处理管理员对留言的回复及删除功能。
同样为防止未经登陆的非法操作,需要做登录检测:
session_start();
// 未登陆则重定向到登陆页面
if(!isset($_SESSION['username'])){
header("Location: http://".$_SERVER['HTTP_HOST'].rtrim(dirname($_SERVER['PHP_SELF']), '/\'
)."/login.php");
exit;
}
下面是对留言的回复处理代码:
require("./conn.php");
if($_POST){
if(get_magic_quotes_gpc()){
$reply = htmlspecialchars(trim($_POST['reply']));
} else {
$reply = addslashes(htmlspecialchars(trim($_POST['reply'])));
}
// 回复为空时,将回复时间置为空
$replytime = $reply?time():'NULL';
$update_sql = "UPDATE guestbook SET reply = '$reply',replytime = $replytime WHERE id = $_POST[id]";
if(mysql_query($update_sql)){
exit('<script language="javascript">alert("回复成功!");self.location="admin.php";</script>');
} else {
exit('留言失败:'.mysql_error().'[ <a href="javascript:history.back()">返 回</a> ]');
}
}
上面对于时间的处理需要注意一下,当回复内容为空时,那么认为是将原来的回复内容清空,这时候需要将对应的回复时间也设置为空(replytime = NULL)。
在回复成功时,这里我们采用了 JavaScript 方式的重定向到 admin.php 页面,与 submiting.php 中留言成功的基于 meta Refresh 重定向方式略有不同,具体采用那种方式视实际情况或个人喜好而定。