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

本文讲述了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实现用户登录的案例代码 的全部内容, 来源链接: utcz.com/p/221837.html

回到顶部