1

我正在开发 php,我的网页网址是这样的

http://localhost/myweb/?action=news
http://localhost/myweb/?action=my_profile
http://localhost/myweb/?action=my_upload
http://localhost/myweb/?action=my_collection
http://localhost/myweb/?action=chat
http://localhost/myweb/?action=my_friends
etc

例如,在特定页面中有访问 href 链接的删除功能

http://localhost/myweb/?action=my_friends&delete=2414535435 <-friends id

我这样做是为了让它整洁,因为不看源就看不到链接

a href='#'

并使用 javascript 访问真实链接

$('.deleteclass').on('click', function () {
        var name= $(this).attr('nameattr');
        if(confirm('You sure want to delete '+name+'?')){
            window.location='?action=my_friends&delete='+this.id;
        }
    });

问题是,在我处理删除并加载页面后,我不想要地址栏上的完整链接。

http://localhost/myweb/?action=my_friends&delete=2414535435

我需要让它在地址栏上看起来像这样

http://localhost/myweb/?action=my_friends

可能吗?也许通过mod重写?

4

1 回答 1

2

浏览器加载页面后,您无法删除 url。

只需在删除或其他操作后进行重定向。

header('Location: /myweb/?action=my_friends');

将错误/成功消息添加到会话变量(在执行标题之前的操作脚本中),以便您可以在其他页面上显示它们

$_SESSION['errors'] = "Delete Failed: For Some Reason";

并在其他页面上检查会话变量是否存在,显示它然后将其删除(否则它将停留在那里并且页面将继续认为有错误)

<?php

if(isset($_SESSION['errors'])) {
   //Do some code to show the error
   ...
   unset($_SESSION['errors']); //delete the error messages
}
于 2013-06-30T10:41:27.700 回答