重定向而不更改浏览器 url [英] Redirect without changing the browser url

查看:93
本文介绍了重定向而不更改浏览器 url的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下网址,

www.example.com/home.php and
 www.example.com/login.php

当我从 php 重定向到这些页面中的任何一个时,浏览器的 url 应该保持 www.example.com.

When ever I redirect to anyof these pages from php , the url of the browser should remain www.example.com.

我已经尝试过了,但由于缺乏 mod_rewite 知识,我什么也做不了.

I have tried,but I could not do anything due to lack of knowledge in mod_rewite.

请帮忙,提前致谢

推荐答案

如果您想在登录后保留页面,在用户未登录时保持相同的 URL(我们假设为 www.example.com),这很简单:

If you want to keep the page after login, to the same URL when the user was not login (we assume www.example.com), that's easy:

在 www.example.com 中它加载了 index.php,因此我们应该更改 index.php 的内容.

in www.example.com it loads the index.php, so we should change index.php's content.

没有登录的用户,第一次访问时有这个内容:

It has this content when the user who is not logged in, first visit it:

include("htmls/index.html"); // index.html could contain whatever you like

但是你加了这个条件,上面这行是在一个条件里面:

But you add this condition, the above line is inside a condition:

if(isset($_POST['form-submit']))
{
   // do the login process and if success
   include("htmls/index_loggedin.html");
}
else if(is_user_logged_in()===true)
{
  include("htmls/index_loggedin.html"); // 
}
else
{
  include("htmls/index.html"); // means the user has not submitted anything and is also not logged in

}

上面的代码说如果用户已经登录,处理他/她的登录然后包括登录用户的视图,如果用户已经登录,也显示他/她登录用户的视图,否则,如果用户未登录,也没有发送登录请求,则向他展示未登录用户的基本视图.我假设您表单的提交按钮名为表单提交".

The above code says that if the user has logged in, process his/her login and then include a view which is for logged in users, also if the user is already logged, also shows him/her the view which is for logged in users, otherwise, if the user is not logged, nor has sent no request of loggin in, then show him a basic view for unlogged users. I have assumed the submit button of your form is named "form-submit".

然而,以上命名只是为了清楚起见.例如,您可以将 index.html 和 index_loggedin.html 合并为一个 view_index.php,然后将主 index.php 的条件也复制到 view_index.php.

However the above naming is just for sake of clarity. For instance, you can combine index.html and index_loggedin.html into one view_index.php and then also duplicate the conditions of the main index.php to also the view_index.php.

最后一点是,您应该尽可能将代码和视图分开.

A last note is that, you should separate the code and the view as fully as possible.

这篇关于重定向而不更改浏览器 url的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆