Maison >développement back-end >tutoriel php >Code de cas PHP pour la connexion de l'utilisateur

Code de cas PHP pour la connexion de l'utilisateur

不言
不言original
2018-06-01 13:55:541812parcourir

Cet article présente principalement le code de cas de PHP pour implémenter la connexion utilisateur. Il a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer

Cet article décrit le code de cas de. PHP pour implémenter la connexion utilisateur. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Analyse des besoins :

Dans le développement d'applications Web, il est souvent nécessaire d'implémenter la fonction de connexion utilisateur . Supposons un utilisateur nommé nom d'utilisateur. Lorsque l'utilisateur accède à la page d'accueil du site Web, s'il n'est pas connecté, la page lui sera demandée. L'utilisateur saisit les informations de connexion pour vérification. Si la vérification réussit, il entre dans le centre des utilisateurs. . Sinon, le nom d'utilisateur ou le mot de passe est incorrect et il doit se reconnecter. Après une connexion réussie, l'utilisateur peut également cliquer sur « Se déconnecter » pour revenir à la page de connexion.

Organigramme de programmation :

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>

connexion .php

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

index.php

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

logout.php

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

Interface de connexion :


Recommandations associées :

PHP implémente la fonction de vérification du code de vérification de connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn