举一个很常见的例子,很多网站的登录并不是单独一个链接,而是在很多个页面上都有登录链接,方便用户随时可以登录,这样用户可以在首页indexphp
上登录,也可以在其他的页面上登录。而且登录后就会自动返回登录前的页面,比如,从indexphp点登录的链接,就跳到了登录的页面
loginphp,提交到checkphp文件,检查数据是否正确,然后checkphp调用header(‘location:
url’)跳转到指定的页面。
最直接的办法就是直接指定url要返回的路径,这确实是最简单的,却不一定可取,因为它不够自动,每次返回是都需要人工指定,非常不方便。
(现在觉得这种方法也不比第三种差 Update:20100320)
使用$_SERVER['>
1、thinkPHP 的Action类的redirect方法可以实现页面的重定向功能,redirect 重定向的通用语法为:edirect(url,params=array(),delay=0,msg='') // 跳转到 edit *** 作 $this->redirect('edit')。
2、// 跳转到 UserAction下的edit *** 作 this->redirect('User/edit'),// 跳转到 Admin分组默认模块默认 *** 作$this->redirect('Admin/')。
3、// 跳转到 Admin分组Index模块view *** 作$this->redirect('Admin-Index/view'),// 跳转到 Admin分组Index模块view *** 作,uid参数为1,延迟3秒跳转 $this->redirect('Admin-Index/view', array('uid'=>1)。
4、同项目分组中的URL访问一样,redirect 中跨分组跳转只是多了一个分组项目名称的概念,可以在 redirect 中使用路由,redirect 方法的参数用法和 U函数 的用法一致,可参考 U函数 生成URL地址相关部分内容。
header('Location:' str_replace('login_url:', '', file_get_contents($filename)));
其中$filename变量是你那个要读取的url路径
登陆成功时你应该保存用户会话:
$_SESSION['userinfo'] = '用户信息(id)'; // 保存用户会话
在另外一个页面直接获取即可:
echo "当前登陆用户是 : " $_SESSION['userinfo'];
前提需要你开启SESSION会话。
首先在每个页面开始处启用cookie
ABC3个页面的最前面加上如下代码
<php
session_start();
$_SESSION['page_class'] = a //a或者b或者c,看是abc中的哪个页面
if (!isset($_SESSION['valid_user']))
{
//如果cookie没设置,就自动跳回去登入loginphp
$GoTo="Dphp";
header(sprintf("Location: %s", $GoTo));
}
>
在d页面最开始出启动cookie
<php
session_start();
>
这里是你的相应的登入代码
如果账号和密码验证正确
则设置cookie变量$_SESSION['valid_user'] = $username,并对另外一个cookie变量
$_SESSION['page_class']的值进行判断是a就去aphp,是b就去bpbp,是c就去cphp,如果没设置,那说明是直间登入的dphp,那就跳去首页好了,比如aphp
够详细了吧其余代码自己写吧
刷新页面
header("Location:"basename(__FILE__));
//跳转到当前页面,basename(__FILE__)得到的是当前正在执行文件的名称,跳转一下就等于是刷新了
//basename(__FILE__)前面的一定不能少
跳转页面
header('Location: >
以上就是关于php怎样实现跳转到原来或之前的页面全部的内容,包括:php怎样实现跳转到原来或之前的页面、PHP怎么获得目标URL跳转后的内容、php中怎么用redirect实现页面跳转等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)