代码只放通过SID判断使用cookie还是session
login.php
<?php
session_start();
echo session_id()."<br>"; //跳转页面不能不是header
if(isset($_POST["sub"])){
include "conn.inc.php";
$sql="select id from users where name='{$_POST["name"]}' and password='".md5($_POST["password"])."'";
$result=$mysqli->query($sql);
//保存数据
if($result->num_rows > 0){
$row=$result->fetch_assoc();
$_SESSION["username"]=$_POST["name"];
$_SESSION["uid"]=$_POST["uid"];
$_SESSION["isLogin5"]=1;
//跳转界面
echo '<script>';
echo "location='index.php?".SID."'"; //SID 常量如果开启cookie则使用cookie,如果没开启就用session
echo '</script>';
}
echo "用户名密码有误";
}
?>
<html>
<head>
<title>用户登录</title>
</head>
<body>
<form action="login.php?<?php echo SID; ?>" method="post">
<table align="center" border="1" width="300">
<caption><h1>用户登录</h1></caption>
<tr>
<th>用户名</th>
<td><input type="text" name="name"></td>
</tr>
<tr>
<th>密码</th>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" name="sub" value="登录">
</td>
</tr>
</table>
</body>
</html>
conn.inc.php
<?php
$mysqli=new mysqli("localhost","root","heyifeng19930924","sqldb");
comm.php
<?php
session_start();
//判断:如果没登录自动跳转到登录页面
if(!$_SESSION["isLogin5"]){
header("Location:login.php");
}
index.php
<?php
include "comm.php"; //判断是否登录成功
include "conn.inc.php";
echo "用户<b>".$_SESSION["username"]."</b>你好!这是网站首页";
echo session_id()."<br>";
echo "你的权限如下:<br>";
$sql="select allow_1,allow_2,allow_3,allow_4 from users where id='{$_SESSION["uid"]}'";
$result=$mysqli->query($sql);
$user=$result->fetch_assoc();
if($user["allow_1"]){
echo "111111111111<br>";
}
if($user["allow_2"]){
echo "222222222222<br>";
}
if($user["allow_3"]){
echo "333333333333<br>";
}
if($user["allow_4"]){
echo "444444444444<br>";
}
?>
<a href="test.php?<?php SID ?>">第二页</a><br>
<a href="test2.php?<?php SID ?>">第三页</a><br>
<a href="logout.php?<?php SID ?>">退出</a><br>
test.php和test2.php编写上和index.php如出一辙
logout.php
<?php
include "comm.php"; //判断是否登录成功
$username=$_SESSION["username"]; //取出用户名
$sid=session_id();
//开启session
session_start();
//情况session值
$_SESSION=array();
//删除客户端的在cookie中的sessionid
if(isset($_COOKIE[session_name()])){
setCookie(session_name(),'',time()-3600,'/'); //一定要写上第四个参数(路径)
}
//彻底销毁session
session_destroy();
echo $username."再见!";
echo $sid;
?>
<br>
<!--
<a href="login.php?PHPSESSID=<?php echo session_id() ?>">重新登录</a>
-->
<a href="login.php">重新登录</a>
版权声明:本文为博主原创文章,未经博主允许不得转载。
分享到:
相关推荐
php session登录。附数据表执行SQL,HTML前端代码,PHP代码。
中session怎么设置,打开 php.ini,查找Session设置部分中以下一项,代码如下: session.save_path = "N;/path" session.save_path = "C:/Temp" #此处以你自己设定的路径为准 这项设置提供给我们可以给session...
一段php中将session保存到数据库的函数类代码,可以使用session_set_save_handler()来注册连接数据的函数。
PHP与Session实现购物车功能,PHP表单验证,js DOM操作
分享一段php中将session保存到数据库的函数类代码,可以使用session_set_save_handler()来注册连接数据的函数。需要的朋友们可以下载参考。
session跨域 代码里有a.com,b.com两个站 请选设好虚拟主机。两个站 访问a.com的a.php设过session 访问一下b.com看一下有没有获取到a.com设过的session 代码简单。主要是思路
用PHP写的购物车类,实现了 放入商品 修改数量 删除商品 显示购物车信息的功能.只用一个session就实现了 代码比较容易读懂,适合新手学习! 注意:有一个bug,最后一个del_cart()方法要先session_start(); 忘记加了!
主要介绍了php session实现多级目录存放实现代码,需要的朋友可以参考下
里边有详细代码,包含SQL脚本,有需要可以参考 //设置用户自定义Session存储 session_set_save_handler('mysession_open', 'mysession_close', 'mysession_read', 'mysession_write', 'mysession_destroy', '...
因为小程序原生不支持Cookie,因此也不支持Session。 网上找到的的一些方法有缺陷,而且很多累赘,估计没有实际测试过,在此直接给出实测可用的代码。 大概思路就是借助小程序本地储存+网络请求的header可读可写来...
对 php session 比较迷惑的可以下载看看。 高手可以飘过 不懂可以加我。
基于PHP两种会话机制,Session和Cookie的相关实例,帮助大家更好理解PHP会话机制。如有错误,请提出
方法一: 在后台应用程序中设置:Session.Timeout = 1; 注意:1、此方法可以设置在一个... 您可能感兴趣的文章:php 如何设置一个严格控制过期时间的sessionjava设置session过期时间的实现方法php中实现精确设置se
<?php // session start session_start(); // 开始一个会话,如果要使用session程序最前面一定要加上这句 ...// 该代码不可运行,只是将所有使用方法在这里列出,实际应该不同功能在不同页面使用,将在下面的例子中演示
为了安全管理员不想使用后台后,最好是注销下,其实就是销毁session
本书详细阐述了php中的session会话固定漏洞可能引发的安全问题,叙述了php代码审计的一些tips。
php利用mysql保存session的实现思路及示例代码.docx
的设置复制代码 代码如下:session.save_handler = redissession.save_path = “tcp://127.0.0.1:6379″修改后重启php-fpm或nginx,phpinfo() session redis如果不想修改php.ini可这样复制代码 代码如下:ini_set(...
将PHP的session数据存储到数据库中的代码实例_.docx