ORM 构造和add 方法

本文详细介绍了如何使用ORM(对象关系映射)技术存储用户信息,并通过AUTH控制实现自动登录功能,简化了登录流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

利用ORM存储一行信息:

        $user = ORM::factory('user');
        $user->username = 'admin';
        $user->email        = 'admingmail.com';
        $user->password = 'good_pass';
        $user->save();

 

        $user = ORM::factory('user');
        $user->username = 'admin';
        $user->email        = 'admingmail.com';
        $user->password = 'good_pass';
        $user->save();
        
        // dont forget to add roles. 'login' role needs for successful login
        $user->add('role', ORM::factory('role', array('name' => 'admin')));
        $user->add('role', ORM::factory('role', array('name' => 'login')));

ORM::factor('role',array('name'=>'admin'))

这段意思是  找到 字段名 name值为 admin 返回他的主键。

 

如何使用AUTH控制登录:

配置文件 auth.php:

return array(
    'driver'       => 'File',
    'hash_method'  => 'sha256',
    'hash_key'     => "xxxx",
    'lifetime'     => 1209600,
    'session_type' => Session::$default,
    'session_key'  => 'auth_user',

    // Username/password combinations for the Auth File driver
    'users' => array(
         'admin' => '86aa66fdd3385a80a2c4f0c658f0a85cf0297934ce67b7e0ca50d35b3b000962',
    ),

);

 

 

$user = ORM::factory('user');
        $user->username = 'admin';
        $user->email = 'admingmail.com';
        $user->password = 'good_pass';
        $user->save();
        
        // dont forget to add roles. 'login' role needs for successful login
        $user->add('role', ORM::factory('role', array(
            'name' => 'admin'
        )));
        $user->add('role', ORM::factory('role', array(
            'name' => 'login'
        )));
        
        $auth = Auth::instance();
        if ($auth->login('admin', 'good_pass', true)) {
            echo 'hello, ' . $auth->get_user();
        } else {
            echo 'login failed!';
        }

 

这段代码用户名和密码是保存文件中,实际可以写在配置文件中。

auth可以实现的是保存SESSION。

实现自动登录,无需输入用户名密码。

 

 

转载于:https://www.cnblogs.com/canbefree/p/3834502.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值