关键字:PHP Session 登陆 验证

本文地址:http://www.cnblogs.com/txw1958/p/php-login-check-session.html

首先,在MySQL数据库中创建管理员账号表

create table users
(
username char(8) not null,
passcode char(8) not null,
userflag int,
primary key(username)
);

接着对表进行初始化,输入数据。

insert into users values('admin','admin123',1);

用户登陆页面:

<html>
<head>
<title>Login_fangbei</title>
</head>
<body>
<form name="fangbei" method="post" action="check_session_login.php">
<div style="width:353">
<dl>
<dt></dt>
<dd>
<div align="left">
Username:
<input type="text" name="username" />
</div>
</dd>
<dd>
<div align="left">
Psssword:
<input type="password" name="passcode" />
</div>
</dd>
<dd>
<p align="center"> <input type="submit" name="Submit" value="Submit" /> <input type="reset" name="Reset" value="Reset" /> </p>
</dd>
</dl>
</div>
</form>
</body>
</html>

这个页面登陆之后,会从表单中转向check_session_login.php页面。

代码如下:

<?php
@mysql_connect("localhost","root",'root')
or die("数据库连接失败");
@mysql_select_db("mydb")
or die("选择数据库失败");
//获取输入的信息
$username = $_POST['username'];
$passcode = $_POST['passcode'];
//获取session的值
$query = @mysql_query("select username,userflag from users where username = '$username' and passcode = '$passcode'")
or die("SQL语句执行失败");
//判断用户以及密码
if($row = mysql_fetch_array($query))
{
session_start();
//判断权限
if($row['userflag'] == 1 or $row['userflag'] == 0){
$_SESSION['username'] = $row['username'];
$_SESSION['userflag'] = $row['userflag'];
echo "<a href='welcome_session_login.php'>欢迎访问www.cnblogs.com/txw1958</a>";
}else{
echo "userflag不正确";
} }else{
echo "username或者usercode";
}
?>

验证通过之后,达到欢迎页面welcome_session_login.php。

代码如下:

<?php
session_start();
if(isset($_SESSION['username']))
{
if($_SESSION['userflag'] == 1)
echo "欢迎管理员".$_SESSION['username']."登陆";
if($_SESSION['userflag'] == 0)
echo "欢迎用户".$_SESSION['username']."登陆";
}
else
{
echo "您没有权限访问此页面";
}
?>

最后还有个销毁session页面destroy_session_login.php。

代码如下:

<?php
unset($_SESSION['username']);
unset($_SESSION['passcode']);
unset($_SESSION['userflag']);
echo "注销成功";
?>

PHP登陆Session验证的更多相关文章

  1. session验证登陆- 页面跳转

    用session验证登陆,当用户想访问一个页面时由于没有登录,就跳转到登录页面,登录后跳转到用户请求的页面,在session跳转中传上次请求的页面.  怎么获得这个url值并跳转到该页面呢? 以此跳转 ...

  2. 过滤器+用session验证是否登陆过

    过滤器: public class MyActionFilter : ActionFilterAttribute//继承ActionFilterAttribute类 { public override ...

  3. asp.net获取当前页面文件名,参数,域名等方法。统一session验证和权限验证的方法

    转:http://blog.csdn.net/llll29550242/article/details/6054323 ASP.net后台获取当前页面的文件名 System.IO.Path.GetFi ...

  4. yii自动登陆的验证机制浅析

    一直在使用yii进行开发, 也知道如何去使用, 也仅仅是知道怎么去用罢了, 终归是没研究过源码, 心里发虚, 今天遇到一个问题, 关于自动登陆的问题. 要求就是, 修改登陆保存session天数为自定 ...

  5. Struts2 自定义拦截器实例—登陆权限验证

    实现一个登陆权限验证的功能 message.jsp: <body> message:${message } </body> login.jsp: <% request.g ...

  6. $Django 表设计,登陆图片验证

    pip3 install pillow #PIL登陆图片验证(未实现局部刷新)详细:https://www.cnblogs.com/qiangyuge/p/8025168.htmldef get_co ...

  7. 第二百七十节,Tornado框架-生成验证码图片,以及验证码结合Session验证

    Tornado框架-生成验证码图片,以及验证码结合Session验证 第一.生成验证码图片  生成验证码图片需要两个必须模块 1.python自带的random(随机模块) 2.Pillow()图像处 ...

  8. django开发项目实例3--用session是实现简单的登陆、验证登陆和注销功能

    如果你的网页不是纯阅读型的,那么你很有可能希望在用户打开某些界面的时候需要验证用户是否登陆的信息, 虽然django里面有自带的一些user的类,但我看不懂,并且自己实现也不是很难,下面和大家分享一下 ...

  9. Django之session验证的三种姿势

    一.什么是session session是保存在服务端的键值对,Django默认支持Session,并且默认是将Session数据存储在数据库中,即:django_session 表中. 二.FVB中 ...

随机推荐

  1. java编译自动化

    java编译自动化 http://h2ofly.blog.51cto.com/6834926/1545452?utm_source=tuicool&utm_medium=referral

  2. QT快捷键

    F1使用方法:选中某一类或函数,按下F1,出现帮助文档 F2使用方法:选中某一类或函数,按下F2,迅速定位到该类或函数声明的地方或被调用的地方 Ctrl+鼠标滚轮的使用方法:按住Ctrl,使鼠标滚轮旋 ...

  3. java网络编程之UDP实例

    package Socket; import java.net.DatagramPacket; import java.net.InetAddress; public class Dgram { pu ...

  4. lastLogon和lastLogonTimestamp的区别

    如何得到用户最近一次登陆域的时间?在Windows2003域中有2个属性:lastLogon和lastLogonTimestamp,那么这2个属性到底有什么作用呢? lastLogon属性实时更新用户 ...

  5. NBOJv2 1034 Salary Inequity(DFS序+线段树区间更新区间(最值)查询)

    Problem 1034: Salary Inequity Time Limits:  10000 MS   Memory Limits:  200000 KB 64-bit interger IO ...

  6. NBOJv2 1050 Just Go(线段树/树状数组区间更新单点查询)

    Problem 1050: Just Go Time Limits:  3000 MS   Memory Limits:  65536 KB 64-bit interger IO format:  % ...

  7. windows下Ruby开发环境搭建

    一.下载 下载RubyInstaller 二.安装 按照提示安装 安装完毕后,在cmd命令窗口,输入:ruby -v 查询rbuy版本:输入gem -v 查询gem版本 三.Ruby插件(Redis插 ...

  8. Linux常用命令(持续更新中)

    cd 目录名 :进入某个目录 ls :列出当前目录的内容 locate 文件名/目录名:寻找文件.目录 find 目录名1 -name 文件名/目录名2 :在目录1中寻找目录2 whereis  文件 ...

  9. python 执行文件时传参

    ## test.py ## ####################### import sys if __name__ == "__main__": args = sys.arg ...

  10. windows下Gulp安装

    目录: 1.安装nodejs2.使用命令行3.npm介绍4.选装cnpm5.全局安装gulp6.新建package.json文件7.本地安装gulp插件8.新建gulpfile.js文件9.运行gul ...