php实现用户登陆简单实例

php实现用户登陆简单实例

前言:

最近要完成的最后一个部分,就是对用户提交的数据进行管理,至于管理,那肯定就是管理员的事了,那一定涉及登陆,验证账号权限,账号是否过期等等问题。

所需知识

session,确实是很重要的东西。并且我遇到session不能跨页,修改PHP.ini的session.use_trans_sid = 0值为1。

具体实现

我的后台设计的比较简单,只需输入一个密码即可,这个密码当然是保存在服务器可以更改的啦。所以只需要给session添加两个变量,flag、time。

首先,用flag来确定管理员是否成功登陆,用time确定登陆是否超时。提交密码后,如果正确会给flag赋值为1,time赋值为当前时间。每次进入新的页面或进行操作时会对这两个变量进行判断,首先判断flag值是否为1,不唯一直接提示未登陆,销毁session,如果为1,再判断当前时间-$_SESSION(‘time')是否小于600(10分钟),若大于,提示登陆超时,销毁session;若小于,允许操作,并更新time变量值为当前值。

部分代码

check_pw.php

<?php session_start(); $_SESSION['flag'] = 0; $myfile = fopen("passwd","r") or die("Unable to open file!"); $passwd = fgets($myfile); if(empty($_POST['pass'])){ echo "不能为空,重新输入"; $page = "login.html"; }else{ $pass = $_POST['pass']; $passwd = test_input($passwd); $pass = test_input($pass); if($pass == $passwd){ echo "口令正确,允许访问"; $page = "list_all.php"; $_SESSION['flag'] = 1; $_SESSION['time'] = time(); //当前秒数 }else{ echo "口令错误,重新输入"; $page = "login.html"; } } function test_input($date){ $date = trim($date); $date = stripcslashes($date); $date = htmlspecialchars($date); return $date; } ?> <a href="<?php echo $page;?>" rel="external nofollow" >点此跳转</a>

list_all.php(部分)

<?php session_start(); if($_SESSION['flag'] == 1){ if(time() - $_SESSION['time'] > 600){ echo "登陆超时"; echo '<a href="login.html" rel="external nofollow" rel="external nofollow" >点此登陆</a>'; session_destroy(); exit(); }else{ $_SESSION['time'] = time(); } }else{ echo "未登陆,无权访问!"; echo '<a href="login.html" rel="external nofollow" rel="external nofollow" >点此登陆</a>'; session_destroy(); exit(); } ?>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

时间: 2024-12-30 12:50:24

php实现用户登陆简单实例的相关文章

asp.net IHttpModule模板用户登陆代码实例

asp教程.net ihttpmodule模板用户登陆代码实例 void application_acquirerequeststate(object source, eventargs e)         {             httpapplication application = (httpapplication)source;             user user = (user)application.context.session["user"]; //获取

一个处理用户登陆的servlet简单实例_java

本文实例讲述了一个处理用户登陆的servlet实现方法.分享给大家供大家参考.具体分析如下: Login.java代码如下: 复制代码 代码如下: package com.bai; import javax.servlet.http.*; import java.io.*; public class Login extends HttpServlet{     public void doGet(HttpServletRequest req,HttpServletResponse res){  

Flash表单制作实例:用户登陆系统

第5节 用户登陆系统 使用Flash制作的表单可以用做网站的登陆入口,至于输入特定的用户名和密码,才可以进入该网站,本实例就来制作一个简单的用户登陆系统,如果输入的密码和用户名相同,则可以登陆到网站上,如果不相同,则给出提示信息,不能登陆到网站. 此登陆系统界面如图5.1所示;   图5.1 用户登陆系统主界面 比如我们在用户名文本框中输入User,然后在密码文本框中也输入Use,则自动打开Ie浏览器窗口,进入网站,如果输入的密码和用户名不相同,则给出如图5.2所示的出错信息:   图5.2 出

用AJAX实现页面登陆以及注册用户名验证的简单实例_AJAX相关

AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX 是一种用于创建快速动态网页的技术.其核心是 JavaScript 对象 XMLHttpRequest.该对象在 Internet Explorer 5 中首次引入,它是一种支持异步请求的技术.简而言之,XMLHttpRequest使您可以使用 JavaScript 向服务器提出请求并处理响应,而不阻塞用户. 通过在后台与

用AJAX实现页面登陆以及注册用户名验证的简单实例

AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX 是一种用于创建快速动态网页的技术.其核心是 JavaScript 对象 XMLHttpRequest.该对象在 Internet Explorer 5 中首次引入,它是一种支持异步请求的技术.简而言之,XMLHttpRequest使您可以使用 JavaScript 向服务器提出请求并处理响应,而不阻塞用户. 通过在后台与

js中判断用户输入的值是否为空的简单实例

 本篇文章主要是对js中判断用户输入的值是否为空的简单实例进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 在js中判断用户输入的值是否为空,这是大家用得非常多的. 这没有什么好写的. 而我却写了. 原因只是自以为是的认为我的这些代码写得不错, 供大家参考一下.   这是摘自的我一个项目的中的用户注册页面.对于大多数人来说,这都几乎是100%经历过的. 贴代码吧,这些代码都是用js写的. 不难,很容易看懂. 看的时候,只要区别两个js类就行了. 前台页面代码:reguser.aspx  

js判断登陆用户名及密码是否为空的简单实例_javascript技巧

js判断登陆用户名及密码是否为空的简单实例 <script type="text/javascript"> // 验证输入不为空的脚本代码 function checkForm(form) { if(form.username.value == "") { alert("用户名不能为空!"); form.username.focus(); return false; } if(form.password.value == "

php入门用户登陆实例代码与教程

第一步 /* 先创建数据表 直接复制到你的phpmyadmin 直接运行就OK了.1 CREATE TABLE IF NOT EXISTS `useradmin` (   `id` int(4) NOT NULL auto_increment,   `username` varchar(20) default NULL,   `userpass` varchar(40) default NULL,   `logins` int(4) NOT NULL default '0' COMMENT '登

asp简单的用户登陆代码

asp简单的用户登陆代码 <% username=replace(request.form("username"),"'","''") password=replace(request.form("password"),"'","''") sql="select * from admin where(username='"&username&&q