您的位置 首页 php

php实现简单的登陆功能(附源码)

php实现简单的登陆功能(附源码)

在一个网站中登陆功能是必不可少的,本文简单的讲述了在php中如何实现登陆功能。

登录界面:

denglu.png

html代码(login.html):

<form action="login.php" method="post"><fieldset><legend>用户登录</legend><ul><li><label>用户名:</label><input type="text" name="username"></li><li><label>密   码:</label><input type="password" name="password"></li><li><label> </label><input type="checkbox" name="remember" value="yes">7天内自动登录</li><li><label> </label><input type="submit" name="login" value="登录"></li></ul></fieldset></form>

login.php:(登陆处理页)

<?php header('Content-type:text/html; charset=utf-8');// 开启Sessionsession_start(); // 处理用户登录信息if (isset($_POST['login'])) {# 接收用户的登录信息$username = trim($_POST['username']);$password = trim($_POST['password']);// 判断提交的登录信息if (($username == '') || ($password == '')) {// 若为空,视为未填写,提示错误,并3秒后返回登录界面header('refresh:3; url=login.html');echo "用户名或密码不能为空,系统将在3秒后跳转到登录界面,请重新填写登录信息!";exit;} elseif (($username != 'username') || ($password != 'password')) {# 用户名或密码错误,同空的处理方式header('refresh:3; url=login.html');echo "用户名或密码错误,系统将在3秒后跳转到登录界面,请重新填写登录信息!";exit;} elseif (($username = 'username') && ($password = 'password')) {# 用户名和密码都正确,将用户信息存到Session中$_SESSION['username'] = $username;$_SESSION['islogin'] = 1;// 若勾选7天内自动登录,则将其保存到Cookie并设置保留7天if ($_POST['remember'] == "yes") {setcookie('username', $username, time()+7*24*60*60);setcookie('code', md5($username.md5($password)), time()+7*24*60*60);} else {// 没有勾选则删除Cookiesetcookie('username', '', time()-999);setcookie('code', '', time()-999);}// 处理完附加项后跳转到登录成功的首页header('location:index.php');}} ?>

index.php(默认主页):

<?php header('Content-type:text/html; charset=utf-8');// 开启Sessionsession_start(); // 首先判断Cookie是否有记住了用户信息if (isset($_COOKIE['username'])) {# 若记住了用户信息,则直接传给Session$_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(); // 清除Cookiesetcookie('username', '', time()-99);setcookie('code', '', time()-99); // 提示信息echo "欢迎下次光临, ".$username.'<br>';echo "<a href='login.html'>重新登录</a>";  ?>

登录成功的状态:

01.png

若勾选7天内自动登录,则会将登录信息通过Cookie和Session技术保存在本地Cookie文件中,7天内会自动登录。

注销页面:

01.png

登录错误的几种情况都做了处理:

02.jpg

感谢大家的阅读,希望大家有所收益。

本文转自:https://blog.csdn.net/l269798518/article/details/80462216

推荐教程:《PHP教程》

以上就是php实现简单的登陆功能(附源码)的详细内容,更多请关注求知技术网其它相关文章!

文章来源:智云一二三科技

文章标题:php实现简单的登陆功能(附源码)

文章地址:https://www.zhihuclub.com/6275.shtml

关于作者: 智云科技

热门文章

评论已关闭

5条评论

  1. I like what you guys are usually up too.

    This kind of clever work and coverage! Keep
    up the great works guys I’ve added you guys to blogroll.

  2. Hi there friends, pleasant post and nice urging commented
    here, I am actually enjoying by these.

  3. สล็อตฝากถอน true wallet ไม่มีบัญชีธนาคาร 2022说道:

    Thanks for finally writing about > php实现简单的登陆功能(附源码) – 智云一二三科技 < Liked it!

  4. First of aall I would like to say terrific blog!
    I had a quick question which I’d like to assk if you do not mind.
    I was interested to find out how you center yourself and clwar your head before
    writing. I have had difficulty clearing my mind
    in gerting myy ideas out. I truly ddo take pleasure in writing but it just seems like the
    first 10 to 15 minutes tend too be lost simply
    just trying too figure out how to begin. Any suggestions or tips?

    Cheers!

  5. When someone writes an post he/she retains the image of
    a user in his/her mind that how a user can know
    it. Therefore that’s why this paragraph is great.

    Thanks!

网站地图