热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php中利用session验证登录表单-PHP源码

前段时间在做一个中奖的活了,其中就用到中奖之后把数据写入session然后再由用户进行数据提交验证了,下面我们要介绍的不是那个例子而一个差不多例子了,具体如下。
前段时间在做一个中奖的活了,其中就用到中奖之后把数据写入session 然后再由用户进行数据提交验证了,下面我们要介绍的不是那个例子而一个差不多例子了,具体如下。

登录页面是:









姓名:

密码:






存储session的页面:

header("Content-Type: text/html; charset=utf8");
if( !isset($_POST["submit"]) ){
die("错误执行");
}//检测是否有submit操作

require_once('connect.php');//链接数据库

if ( isset($_POST['name']) && isset($_POST['password']) ){//如果用户名和密码都不为空

$name = $_POST['name'];

$password = $_POST['password'];

$sql = " SELECT id, limits, message FROM user WHERE username = '$name' AND password = '$password' LIMIT 1";

$result = mysqli_query( $con , $sql );//执行sql 用户名和密码

$rows = mysqli_num_rows( $result );//返回用户名密码是否存在

if( $rows != 0 ){

session_start();

while( $rows_other = mysqli_fetch_assoc($result) ){

$_SESSION['id'] = $rows_other['id'];
$_SESSION['name'] = $name;
$_SESSION['limits'] = $rows_other['limits'];
$_SESSION['message'] = $rows_other['message'];

}

header("refresh:0;url=welcome.php");//跳转至welcome.html页面

exit;

}else{

echo "用户名或密码错误";

echo "";

}

}else{

echo "表单填写不完整";

echo "";

}
?>

登陆后跳转的页面,根据不同的用户显示不同的权限和用户名:











session_start();

if( isset($_SESSION['id']) ){

require_once('connect.php');

$id = $_SESSION['id'];
$name = $_SESSION['name'];
$limits = $_SESSION['limits'];
$message = $_SESSION['message'];

if( $limits == 1 ){

echo 'hello, 管理员' . '
';

}else{

echo 'helo, 普通用户' . '
';
}

echo 'hello you name is:' . $name;

}else{

echo '未登录!';

header("refresh:3;url=login.html");

}
?>

 


?>

使用session注意事项

1.在当前页面要使用session时我们在文件最前面没有输入内容时加上session_start();

2.session有一个时间限制的这个我们可以进行修改的,具体如下

其实PHP5 Session还提供了一个函数 session_set_COOKIE_params(); 来设置PHP5 Session的生存期的,该函数必须在 session_start() 函数调用之前调用:

// 保存一天
$lifeTime = 24 * 3600;
session_set_COOKIE_params($lifeTime);
session_start();
?>

推荐阅读
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Oracle Database 10g许可授予信息及高级功能详解
    本文介绍了Oracle Database 10g许可授予信息及其中的高级功能,包括数据库优化数据包、SQL访问指导、SQL优化指导、SQL优化集和重组对象。同时提供了详细说明,指导用户在Oracle Database 10g中如何使用这些功能。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文由编程笔记小编整理,介绍了PHP中的MySQL函数库及其常用函数,包括mysql_connect、mysql_error、mysql_select_db、mysql_query、mysql_affected_row、mysql_close等。希望对读者有一定的参考价值。 ... [详细]
  • 本文内容为asp.net微信公众平台开发的目录汇总,包括数据库设计、多层架构框架搭建和入口实现、微信消息封装及反射赋值、关注事件、用户记录、回复文本消息、图文消息、服务搭建(接入)、自定义菜单等。同时提供了示例代码和相关的后台管理功能。内容涵盖了多个方面,适合综合运用。 ... [详细]
  • 本文介绍了如何在MySQL中将零值替换为先前的非零值的方法,包括使用内联查询和更新查询。同时还提供了选择正确值的方法。 ... [详细]
  • 在数据分析工作中,我们通常会遇到这样的问题,一个业务部门由若干业务组构成,需要筛选出每个业务组里业绩前N名的业务员。这其实是一个分组排序的 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
author-avatar
儒雅的活在当下
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有