php中如何使用session 来实现在一个页面登陆后才能访问另外一个页面

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php中如何使用session 来实现在一个页面登陆后才能访问另外一个页面相关的知识,希望对你有一定的参考价值。

希望能举个简单例子,登陆页面如何添加代码,访问页面又怎样写?

真怕你是骗分的,所以很多人不敢答,我写一个例子:

登录页面:
<?php
session_start();//在最顶端,不要有输出
$_SESSION['test']='abc';//直接把用户名abc赋予test
?>

其他要登录才能看的页面:
<?php
session_start();
if(isset($_SESSION['test']))//如果已经登录
echo '您已经登陆了,您的用户名是:'.$_SESSION['test'];
else//否则
echo '小样,没登陆想进来?';
exit();//强制中断程序的执行

?>

如果需要注销(也就是删除session):
<?php
session_start();
unset($_SESSION['test']);//直接unset,或者用session里面的函数,我没试过
?>

有疑问追问,我很快就回答的
参考技术A 登录后第一个页面
<?php
session_start();
$_SESSION['id']=$id;//从数据库中查询出来的id
$_SESSION['username']=$username;//从数据库中查询出的用户名
?>
第二个如果要通过url访问的页面
<?php
session_start();
if($_SESSION['id']==null&&$_SESSION['username']==null)
echo '请先登录在访问';

?>
第三个退出页面
<?php
session_start();
$_SESSION['id']==null;
$_SESSION['username']=null;
?>

php把值传入到下一个跳转的页面用那种方法

数据存到数据库成功之后想跳转到下一个页面,然后把数据也传到下一个页面,php有没有类似jsp 中request传值的方式呢??

php里面当页面读取结束的时候,所有的变量将全部清空,所以需要通过别的手段来传值,
1、通过url参数 比如:在跳转链接上加上?id1=$id1&id2=$id2 //这个最常用,也最省资源,但传递的内容有限。
2、保存到session。将数据保存到特定的session中,到下个页面再从session中取出
3、保存到cookie。
4、调用php的curl函数,将数据post到下个页面,
参考技术A 当你成功插入后,mysql_insert_id来获取刚插入的id
header(‘Location:xx.php?id='.mysql_insert_id());
在xx.php(这个xx.php是你跳转的页面,你自己指定)页面用$_GET['id']把值获取到,再从数据库里查出来
参考技术B 没明白你的意思 参考技术C get 和 session

以上是关于php中如何使用session 来实现在一个页面登陆后才能访问另外一个页面的主要内容,如果未能解决你的问题,请参考以下文章

php 如何避免刷新页面重复插入数据到数据库

php中怎么用session来控制页面的访问权限?

php中怎么用session来控制页面的访问权限?

PHP session如何实现跨子域?

如何保证session的一致性session.save

php在服务器中获取不到session的值