首页 > 网站 > 建站经验 > 正文

bool商城用户登录与退出

2024-08-30 19:06:38
字体:
来源:转载
供稿:网友

用户登录与退出,建立login.php用户登录页面,isset判断如果act 是点击登录按钮后进来的,收用户名/密码,验证,实例化UserModel 调用checkUser核对用户名,密码

如果为真,开启session,把$row信息设置给sisson,为了安全在设置sission时把密码删掉unset($row['passwd']);,引用front/msg.html打印返回信息,如果为假,引用denglu.html返回登录.

在UserModel中写checkUser方法 根据用户名,密码两个要素查询,如果只传一个参数根据用用户名查用户信息,用两个参数到数据库取出用户名和密码,与传过来的对比是否相等,根据用户名查询用户信息.

  1. */ 
  2.    public function checkUser($username,$passwd='') { 
  3.        if($passwd == '') {   //如果没传密码,以用户查询 
  4.            $sql = 'select count(*) from ' . $this->table . " where username='" .$username . "'"
  5.            return $this->db->getOne($sql); 
  6.        } else {  //用用户名和密码查询 
  7.            $sql = "select user_id,username,email,passwd from " . $this->table . " where username= '" . $username . "'"
  8.  
  9.            $row = $this->db->getRow($sql); 
  10.  
  11.            if(emptyempty($row)) {  //判断用户名为空 
  12.                return false; 
  13.            } 
  14.  
  15.            if($row['passwd'] != $this->encPasswd($passwd)) {  //输入的密码与查询的密码对比 
  16.                return false; 
  17.            } 
  18.  
  19.            unset($row['passwd']);  //删除$row的密码,确保安全 
  20.            return $row
  21.        } 
  22.    } 

新建index.php 引用index.html模板

在index.html中isset判断$_SESSION['username']存在且非空,为真echo $_SESSION['username']  ; 退出引用logout.php  登录引用login.php

新建logout.php  session_start(); session_destroy();  引用front/msg.html;

默认记住用户名

在login.php中判断下,如果钩中则接收的session信息中有remember字段,就setcookie增加有效期,如没钩中设为失效.

在denglu.html 中把用户名的默认值进行判断.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表