比如我在【index.php?p=3】发布留言,成功后怎么返回到 index.php?p=3 这个页面?
在【index.php?p=5】发布留言成功后怎么返回index.php?p=5这个页面?
location.href="这里该怎么写?"
涉及的页面有index.php,doaction.php,edit.php。
不想指定到某个页面,如location.href="index.php?p=1",这样无论在哪个页面留言后返回的总是第一页。
超全局变量$_SERVER好像可以,但修改页面就又不行了,因为返回的是当前页面,点击到修改页面,修改成功后返回的还是修改页面。。。- -
另外还有一个问题,麻烦大神解答一下,谢谢:
输入框内容为空时,点击留言倒是提示不能为空,但是我点击删除它也提示留言内容不能为空,删除不了。把这段代码去掉就可以删除了。。。修改倒是没问题。
//有问题,(不能删除,点击删除还是提示内容不能为空)
if(empty($mes)){
die("<script>alert('留言内容不能为空'); history.go(-1); </script>");
}
include "conn.php";
switch($mod){
case "add":
$sql = "INSERT INTO message(username, mes)
VALUES('$username', '$mes')";
$res = $conn->query($sql);
if(!$res){
die("<script>alert('留言失败!'); history.go(-1); </script>");
}
echo "<script>alert('留言成功'); location.href='".$_SERVER["HTTP_REFERER"]."'; </script>";
break;
case "del":
$sql = "DELETE FROM message WHERE id=".$id;
$res = $conn->query($sql);
if(!$res){
die("<script>alert('删除失败'); history.go(-1); </script>");
}
echo "<script>alert('删除成功!'); location.href='history.go(-1)'; </script>";
break;
case "edit":
$sql = "UPDATE message SET mes='$mes' WHERE id=".$id;
$res = $conn->query($sql);
if(!$res){
die("<script>alert('修改失败'); history.go(-1); </script>");
}
echo "<script>alert('修改成功!'); history.go(-1); </script>";
break;
你在编辑的时候把当前页放进去,编辑完成header 跳转的时候在给页码,编辑之后就会返回到对应的列表页了。
链接类似于 edit.php?p=5&id=1 ,这样就可以回到当前页了。你删除和编辑是不是一个php文件,代码从上之下运行,肯定会执行那句代码哈,直接分两个文件就可以了哈
那个留言后留在当前页码的功能实现很简单的
有两种方法
都用到jquery 中的 .ajax
第一种:
你的那个页码第五页(就是当前页),是不是有个属性叫class = 'active', 删除成功后调用window.location.replace("addr"),二addr是获取的你当前页码的 a 标签的href属性的值。这样就可以了
第二中:
手动删除,当ajax返回成功后,手动找到被删除的行数的父类标签,然后手动删除就好了,
不过我个人觉得第一种好些,因为减少了代码量,刷新也看不出来
还有就是你的那个弹出 '留言内容不能为空‘ 的问题, 首先你的逻辑就有问题,你把那个留言不能为空放在了最前面,而不是switch语句里面,代码肯定会先执行它,那 '留言内容不能为空‘ 不是应该当 留言 按钮点击时才让它触发的吗
谢谢,第二个问题解决了。
但是 执行后返回当前页还是不太理解,当前页我是这么写的:
@小小单身:
写script脚本
'''
....
var url = $("ul .active a").attr("href"); // 得到当前页的a标签的 链接值
window.location.replace(url); //然后刷新页面就好了啊
....
'''
这个不难啊
@小小单身: 最近再准备比赛,没怎么逛博客
思路是在后台获取到当前的页数,然后负个变量传到前台,前台jq获取,比方 : var page = $(".page").val(); 这时你就可以拿着这个page放在你 window.location.href="index.php?p=page";