digitalway/basic-php-auth

一个纯PHP文件认证类,用于管理用户账户、注册、登录、更新等...

dev-master 2019-12-13 10:32 UTC

This package is auto-updated.

Last update: 2024-09-13 19:02:45 UTC


README

基本的PHP类,不依赖于任何框架,用于管理用户账户、注册、登录、更新、密码加密等...

安全

使用password_hash()和password_verify()函数来加密和验证用户密码。

PHP 5 >= 5.5.0, PHP 7

安装

下载

下载文件 ModelUsers.phptable.sql

在您的数据库中执行 table.sql

或者使用Composer

{
    ...
    "require": {
        "digitalway/basic-php-auth": "1.*"
    }
}

表结构

CREATE TABLE `users` (
  `id_user` int(11) NOT NULL,
  `firstname` varchar(100) NOT NULL,
  `lastname` varchar(100) NOT NULL,
  `email` varchar(255) NOT NULL,
  `password` varchar(255) NOT NULL,
  `create_time` datetime NOT NULL,
  `update_time` datetime NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

查看 table.sql 以获取完整的结构,包括索引

用法

实例化类

实例化类时,必须传递一个PDO连接作为参数

$user = new ModelUsers($pdoLink);

检查登录/密码

$user = new ModelUsers($pdoLink);

if($user->login('login', 'password')){
    echo 'Login and password correct';
    print_r($user->profile);
}
else{
    echo 'Wrong login or password';
}

获取用户信息

$user->get(5);
print_r($user->profile);

通过电子邮件获取用户信息

$user->getByMail('hello@kidnoize.be');
print_r($user->profile);

获取用户列表

$user->getList(0,0, 'name', 'ASC');
print_r($user->list);

添加用户

$user->profile['firstname'] = 'Kid';
$user->profile['lastname'] = 'Noize';
$user->profile['email'] = 'hello@kidnoize.be';
$user->profile['password'] = 'houbahouba';

$user->add();

如果电子邮件存在,则返回 -2

更新用户

$user->profile['firstname'] = 'Kid';
$user->profile['lastname'] = 'Noize';
$user->profile['email'] = 'hello@kidnoize.be';
$user->profile['id'] = 5;

$user->update();

如果电子邮件存在,则返回 -2

更新密码

$user->profile['password'] = 'houbahoubazitoko';
$user->profile['id'] = 5;

$user->updatePassword();

删除用户

$user->del(5);