php登录页面跳转
A. php登陆后跳转到登陆前页面实现思路及代码
PHP登陆后跳转到登陆前页面,利用$_SERVER全局变量可以实现这个功能,下面有个不错的示例,希望对大家有所帮助
最近手上一个小项目让我接触到PHP编程,简单的登陆功能已经OK。可是在实际使用的时候发现一个问题:用户A发送一个链接给用户B,B打开时页面提示登陆,可是登陆成功后,却跳转到了首页,而并不是A发送的链接。为了有更好的用户体验,B登陆成功后应该自动跳转到登陆前的链接。查了PHP帮助手册,利用$_SERVER全局变量可以实现这个功能。
$_SERVER是PHP的一个超全局变量,关于$_SERVER变量的详细解释可以参考:http://www.php.net/manual/zh/reserved.variables.server.php
具体实现方法为:在提示用户登录的同时,在session或者cookie中记录下请求页面的URL;登录验证成功后在跳转回该URL。
checklogin.php
代码如下:
session_start();
if
(!isset
($_SESSION['login_ok']))
{
echo
"<script
language=javascript>alert
('要访问的页面需要先登录。');</script>";
$_SESSION['userurl']
=
$_SERVER['REQUEST_URI'];
echo
'<script
language=javascript>window.location.href="login.php"</script>';
}
login.php
代码如下:
session_start();
//此处省略了账号密码验证代码,验证OK再执行下面代码
if
(isset
($_SESSION['userurl']))
{
//会话中有要跳转的页面
$url
=
$_SESSION['userurl'];
}
else
{
//没有要跳转的页面,则转到首页
$url
=
"home.php";
}
//0.5s后跳转
echo
"<meta
http-equiv="refresh"
content="0.5;url=$url">";
B. 我是用PHP Mysql实现登录的,怎样在登陆后由登陆界面跳转到index.html主页面并在登陆的地方显示用户名
通常来说, index 页面与 login 页面被设计成两个页面,当通过 mysql 查询数据,并验证成功登录后,可以自动转向 index 页面(或其他页面):
if($num){
$row=mysql_fetch_array($result);
$_SESSION["username"]=$uuser;
header("Location:index.html");
在 index 页面需要添加代码:例如:
<?php
session_start();
//检测是否登录,若没登录则转向登录界面
if(!isset($_SESSION['username'])){
header("Location:login.html");
exit();
}
echo'当前登录用户:'.$_SESSION['username']
C. PHP页面跳转几种实现方法
Web系统中,从一个网页跳转到另一个网页,是LAMP项目中最常用的技术之一。页面跳转可能是由于用户单击链接、按钮等引发的,也可能是系统自动产生的。 此处介绍PHP中常用的实现页面自动跳转的方法。
PHP页面跳转一、header()函数
header()函数是PHP中进行页面跳转的一种十分简单的方法。header()函数的主要功能是将HTTP协议标头(header)输出到浏览器。
header()函数的定义如下:
void header (string string [,bool replace [,int http_response_code]])
可选参数replace指明是替换前一条类似标头还是添加一条相同类型的标头,默认为替换。
第二个可选参数http_response_code强制将HTTP相应代码设为指定值。 header函数中Location类型的标头是一种特殊的header调用,常用来实现页面跳转。注意:1.location和“:”号间不能有空格,否则不会跳转。
2.在用header前不能有任何的输出。
3.header后的PHP代码还会被执行。
PHP页面跳转二、Meta标签
Meta标签是HTML中负责提供文档元信息的标签,在PHP程序中使用该标签,也可以实现页面跳转。 若定义http-equiv为refresh,则打开该页面时将根据content规定的值在一定时间内跳转到相应页面。
若设置content="秒数;url=网址",则定义了经过多长时间后页面跳转到指定的网址。
PHP页面跳转三、JavaScript
D. php鍦ㄧ绣椤电橱闄嗘垚锷熷悗镐庝箞瀹炵幇缃戦〉璺宠浆锛岀敱login璺宠浆鍒癷ndex锛
1銆侀栧厛锛屾墦寮php缂栬緫鍣锛屾柊寤簆hp鏂囦欢锛屼緥濡傦细index.php锛
2銆佸湪index.php涓锛岃緭鍏ヤ唬镰侊细header('Location:index.php')锛
3銆佹祻瑙埚櫒杩愯宭ogin.php椤甸溃锛屾ゆ椂浼氲烦杞鍒癷ndex.php椤甸溃锛
E. php镐庝箞瀹炵幇椤甸溃璺宠浆锛屽氨鏄妫娴嬬橱闄嗘椂锛屽傛灉娌$橱闄嗗氨鐩存帴璺冲埌锏婚檰椤甸溃
鍒ゆ柇session鏄钖﹀瓨鍦锛屼笉瀛桦湪鍒栾烦杞鍒扮橱褰曢〉闱
session_start();
if(!$_SESSION['xxx']){
header("Location:login.php");exit;
}
锏诲綍涔嫔悗璁板綍session
阃鍑虹橱褰曚箣钖庨攒姣乻ession
F. php中,执行登录后如何自动跳转到指定页面
<?php
ob_start();
include("conn.php");
if (isset($_POST['username']) && isset($_POST['password'])){
$username=$_POST['username'];
$sql="select password from login where username='$username'";
$res=mysql_query($sql);
list($password)=mysql_fetch_row($res);
mysql_free_result($res);
if ($username==$_POST['username'] && $password==$_POST['password']){
echo "登录成功";
//header("location:sy-1.php");
echo "<script>window.location.herf='sy-1.php';</script>";//在这里添加
ob_end_flush();
}else{
echo "登录失败";
}
}
?>