请教前辈关于表单提交入库 [ 新手入门 ]
我用form组件做一个简单的用户注册功能,只有用户名、密码字段
<?php
use yii\helpers\Html;
use yii\bootstrap\ActiveForm;
?>
<h1>注册页面</h1>
<?php $form = ActiveForm::begin(); ?>
<?php echo $form->field($model, 'u_name')->label('用户名') ?>
<?php echo $form->field($model, 'u_pwd')->passwordInput()->label('密码') ?>
<?php echo Html::submitButton('注册', ['class' => 'btn btn-primary', 'name' => 'login-button']) ?>
<?php ActiveForm::end(); ?>
在控制器接收入库,我想把密码MD5加密,但是不知道怎么单独接收一个字段啊
$request=Yii::$app->request;
$users=new UserForm();
$users->load($request->post());
$re=$users->save();
这样虽然能入库,但是密码是明文的,怎么加密啊?请各位前辈指导啊!
共 4 条回复
-
前辈,根据你写的,我看了一下文档说明
Yii::$app->security->generatePasswordHash($password);
generatePasswordHash好像是把已经接到的密码进行加密并返回结果,$password这个变量是需要自己接的密码吧?接值的方法怎么写啊?比如如果不用组件的话,
input的name值是<input name="u_name" type="text"> <input name="u_pwd" type="text">
控制器接值方式:
$users->u_name->$request->post("u_name",""); $users->u_pwd->$request->post("u_pwd","");
但是用form组件,input的name值是一个数组
<input id="userform-u_name" class="form-control" name="UserForm[u_name]" type="text"> <input id="userform-u_pwd" class="form-control" name="UserForm[u_pwd]" type="text">
我不知道在控制器怎么单独接收数组中的一个值...
而且
`
setPassword`
和`
validatePassword`
这两个方法是框架已经定义好的吗?还是自己写的?heyuan 觉得很赞
lzrqyc110
注册时间:2016-01-02
最后登录:2018-12-28
在线时长:29小时34分
最后登录:2018-12-28
在线时长:29小时34分
- 粉丝37
- 金钱4195
- 威望40
- 积分4885