Yii2学习笔记(四):获取表单输入信息并存到数据库

2022-01-10 10:37:10 浏览数 (2)

总共有4个文件:

1、数据模型:reg.PHP

  1. <?php
  2. namespace appmodels;
  3. use yiibaseModel;
  4. use yiidbActiveRecord;
  5. class reg extends ActiveRecord
  6. {
  7. <span style="white-space:pre"> </span>//因为没有验证啥的,所以这里没有代码
  8. <span style="white-space:pre"> </span>//这里不能写和数据库中表的字段一致的属性,否则会在控制器中显示数据库内容时,显示这里的属性值,而不是数据库的内容值
  9. <span style="white-space:pre"> </span>//eg:public $name;
  10. }

2、控制器:HelloController.php

  1. <?php
  2. //如何启动这个控制文件:运行web/index.php?r=hello/hello即可
  3. //其中r代表参数,第一个hello是控制器的名字,第二个是动作的名字
  4. namespace appcontrollers;
  5. use yiiwebController;
  6. use appmodelstest;//数据模型的命名空间
  7. use appmodelsreg;
  8. class HelloController extends Controller
  9. {
  10. //编一个用户注册页面,提交数据到reg数据表
  11. public function actionReg()
  12. {
  13. $model=new reg;
  14. if(yii::$app->request->post())
  15. {

  1. <span style="white-space:pre"> </span>//获取用户输入的值
  2. $model->name=yii::$app->request->post('name');  
  3.  $model->password=yii::$app->request->post('password');  
  4. //保存到数据库

  1. <span style="white-space:pre"> </span>$model->save();
  2. return this->render('reg_success',['model'=>
  3. }
  4. else
  5. {
  6. //var_dump(yii::$app->request->post());
  7. return this->render('reg',['model'=>
  8. }
  9. }

3、视图文件:reg.php和reg_success.php

reg.php

  1. <?php
  2. use yiihelpersHtml;
  3. use yiiwidgetsActiveForm;
  4. ?>
  5. <?php $form=ActiveForm::begin();?>
  6. name:<input type="text" name='name' ><br>
  7. password:<input type="text" name='password'>
  8. <div class='form-group'>
  9. <?=Html::submitButton('submit',['class'=>'btn btn-primary btn-block']) ?>
  10. </div>
  11. <?php ActiveForm::end();?>

reg_success.php

  1. <?php
  2. use yiihelpersHtml;
  3. ?>
  4. <p>are you entered the following information:</p>
  5. <ul>
  6. <li><label>Name:</label><?=Html::encode($model->name)?></li>
  7. <li><label>Password:</label><?=Html::encode($model->password)?></li>
  8. </ul>

0 人点赞