PHP实现用户登录的案例代码


Posted in PHP onMay 10, 2018

本文讲述了PHP实现用户登录的案例代码。分享给大家供大家参考,具体如下:

需求分析:

在Web应用开发中,经常需要实现用户登录的功能。假设一个名为username的用户,当该用户进入网站首页时,如果还未登录,则页面会提示登录,用户输入登录信息进行验证,验证通过进入用户中心,否则显示用户名或密码错误,重新登录。登录成功后,用户还可以单击“注销”,回到登录页面。

程序设计流程图:

login.html

<!DOCUMENT html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http 
://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> 
<head> 
 <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/> 
 <title>会员登录</title> 
 <style type="text/css"> 
  ul li{margin:0;padding:0;} 
  form{margin:40px 30px 0;} 
  form li{list-style:none;padding:5px 0;} 
  form li label{float:left;width:70px;text-align:right} 
  form li a{font-size:12px;color:#999;text-decoration:none} 
  .login_btn{border:none;background:#01A4F1;color:#fff;font-size:14px;font-weight:bold;height:28px;line-height:28px;padding:0 10px;cursor:pointer;} 
  form li img{vertical-align:top} 
 </style> 
 
</head> 
<body> 
<form action="login.php" method="POST"> 
 <fieldset> 
  <legend>用户登录</legend> 
  <ul> 
   <li> 
    <label for"">用户名:</label> 
    <input type="text" name="username"/> 
   </li> 
   <li> 
    <label for"">密码:</label> 
    <input type="password" name="password"/> 
   </li> 
   <li> 
    <label for""> </label> 
    <input type="checkbox" name="remember" value="yes"/>7天内自动登录 
   </li> 
   <li> 
    <label for""> </label> 
    <input type="submit" name="login" value="登录" class="login_btn"/> 
   </li> 
  </ul> 
 </fieldset> 
</body> 
 
</html>

login.php

<?php 
 header("Content-Type:text/html;charset=utf-8"); 
 session_start(); 
 if(isset($_POST['login'])) 
 { 
  $username = trim($_POST['username']); 
  $password = trim($_POST['password']); 
  if(($username=='')||($password=='')) 
  { 
   header('refresh:3;url=login.html'); 
   echo "改用户名或密码不能为空,3秒后跳转到登录页面"; 
   exit; 
  } 
  else if(($username!='username')||($password!='password')) 
  { 
   //用户名或密码错误 
   header('refresh:3;url=login.html'); 
   echo "用户名或密码错误,3秒后跳转到登录页面"; 
   exit; 
  } 
  else if(($username=='username')&&($password=='password')) 
  { 
   //登录成功将信息保存到session中 
   $_SESSION['username']=$username; 
   $_SESSION['islogin']=1; 
   //如果勾选7天内自动保存,则将其保存到cookie 
   if($_POST['remember']=="yes") 
   { 
    setcookie("username",$username,time()+7*24*60*60); 
    setcookie("code",md5($username.md5($password)),time()+7*24*60*60); 
   } 
   else 
   { 
    setcookie("username",'',time()-1); 
    setcookie("code",'',time()-1); 
   } 
   //跳转到用户首页 
   header('refresh:3;url=index.php'); 
  } 
 } 
?>

index.php

<?php 
 header("Content-Type:text/html;charset=utf-8"); 
 session_start(); 
 //首先判断Cookie是否有记住用户信息 
 if(isset($_COOKIE['username'])) 
 { 
  $_SESSION['username']=$_COOKIE['username']; 
  $_SESSION['islogin']=1; 
 } 
 if(isset($_SESSION['islogin'])) 
 { 
  //已经登录 
  echo $_SESSION['username'].":你好,欢迎进入个人中心!<br/>"; 
  echo "<a href='logout.php'>注销</a>"; 
 } 
 else 
 { //为登录 
  echo "你还未登录,请<a href='login.html'>登录</a>"; 
 } 
?>

logout.php

<?php 
 header("Content-Type:text/html;charset=utf-8"); 
 session_start(); 
 //清除session 
 $username=$_SESSION['username']; 
 $_SESSION=array(); 
 session_destroy(); 
 //清除cookie 
 setcookie("username",'',time()-1); 
 setcookie("code",'',time()-1); 
 echo "$username,欢迎下次光临"; 
 echo "重新<a href='login.html'>登录</a>"; 
?>

登录界面:

PHP实现用户登录的案例代码

PHP实现用户登录的案例代码

PHP实现用户登录的案例代码

以上所述是小编给大家介绍的PHP实现用户登录的案例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
PHP学习笔记 (1) 环境配置与代码调试
Jun 19 PHP
php分页思路以及在ZF中的使用
May 30 PHP
深入解析phpCB批量转换的代码示例
Jun 27 PHP
PHP 验证码不显示只有一个小红叉的解决方法
Sep 30 PHP
php根据身份证号码计算年龄的实例代码
Jan 18 PHP
php之curl实现http与https请求的方法
Oct 21 PHP
Joomla调用系统自带编辑器的实现方法
May 05 PHP
遍历指定目录,并存储目录内所有文件属性信息的php代码
Oct 28 PHP
php输出含有“#”字符串的方法
Jan 18 PHP
PHP基于Closure类创建匿名函数的方法详解
Aug 17 PHP
php 广告点击统计代码(php+mysql)
Feb 21 PHP
PHP实现断点续传乱序合并文件的方法
Sep 06 PHP
yii2多图上传组件的使用教程
May 10 #PHP
PHP数组去重的更快实现方式分析
May 09 #PHP
PHP+MySQL实现消息队列的方法分析
May 09 #PHP
PHP共享内存使用与信号控制实例分析
May 09 #PHP
php curl批处理实现可控并发异步操作示例
May 09 #PHP
php使用curl伪造来源ip和refer的方法示例
May 08 #PHP
PHP+ajax实现获取新闻数据简单示例
May 08 #PHP
You might like
PHP CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发
2012/01/16 PHP
PHP中call_user_func_array()函数的用法演示
2012/02/05 PHP
基于PHP 面向对象之成员方法详解
2013/05/04 PHP
[原创]php逐行读取txt文件写入数组的方法
2015/07/02 PHP
PHP实现QQ、微信和支付宝三合一收款码实例代码
2018/02/19 PHP
PHP通过GD库实现验证码功能示例
2019/02/23 PHP
PHP大文件切割上传功能实例分析
2019/07/01 PHP
用js实现预览待上传的本地图片
2007/03/15 Javascript
javascript 实现键盘上下左右功能的小例子
2013/09/15 Javascript
用js判断是否为360浏览器的实现代码
2015/01/15 Javascript
jQuery+css3实现Ajax点击后动态删除功能的方法
2015/08/10 Javascript
浅谈Sticky组件的改进实现
2016/03/22 Javascript
浅谈AngularJs指令之scope属性详解
2016/10/24 Javascript
node.js基于express使用websocket的方法
2017/11/09 Javascript
详谈vue+webpack解决css引用图片打包后找不到资源文件的问题
2018/03/06 Javascript
python中Genarator函数用法分析
2015/04/08 Python
Python实现简单石头剪刀布游戏
2021/01/20 Python
使用Python制作一个打字训练小工具
2019/10/01 Python
TensorFlow加载模型时出错的解决方式
2020/02/06 Python
Python实现动态给类和对象添加属性和方法操作示例
2020/02/29 Python
15款Python编辑器的优缺点,别再问我“选什么编辑器”啦
2020/10/19 Python
关于box-sizing的全面理解
2016/07/28 HTML / CSS
美国百年历史早餐食品供应商:Wolferman’s
2017/01/18 全球购物
牵手50台湾:专为黄金岁月的单身人士而设的交友网站
2021/02/18 全球购物
艺人经纪人岗位职责
2014/04/15 职场文书
导师工作推荐信范文
2014/05/17 职场文书
活动宣传策划方案
2014/05/23 职场文书
未婚证明书模板
2014/10/08 职场文书
高三语文复习计划
2015/01/19 职场文书
学习十八大的感悟
2015/08/11 职场文书
教学副校长工作总结
2015/08/13 职场文书
三下乡活动心得体会
2016/01/23 职场文书
分家协议书范本
2016/03/22 职场文书
CSS3 制作的彩虹按钮样式
2021/04/11 HTML / CSS
解决python3安装pandas出错的问题
2021/05/20 Python
MyBatis配置文件解析与MyBatis实例演示
2022/04/07 Java/Android