控制器写法如下//用户管理控制器class UserController extends CController{ //显示所有用户 public function actionIndex(){ //$model=new User(); //$arr=$model->findAll(); //var_dump(count($arr)); } //新增用户 public function actionCreate(){ if(!empty($_POST)){ //实例化一个模型对象 var_dump(new User()); $model=new User();echo 123;exit; //var_dump($model); //给模型的属性赋值 //对应表中有哪些字段,模型就有哪些属性,框架会自动处理 //框架中试用了大量的魔术方法来完成这一高级特性 $model->name=$_POST['name']; //如果对象是新new出来的,还没有保存到数据库 //这个对象是新记录 var_dump($model->isNewRecord); //调用模型提供的方法,让他自己去数据库新增记录 $bool=$model->save(); //这个时候对象已经保存,不是新对象,答案是false var_dump($model->isNewRecord); //对象保存后,将会得到数据库自增id,并自动更新对象的id属性 echo $model->id; /*if($bool){ header('Location:index.php?r=user/index'); exit; }else{ echo 'error'; }*/ } $this->render('create'); }}视图如下<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> </head> <body> <form action="index.php?r=user/create" method="post"> <input type="text" name="name" /><br> <input type="submit" value="保存"> </form> </body></html>model如下<?php//用户的模型类class User extends CActiveRecord{ public function tableName(){ //双花括号表示省略表前缀 return '{{user}}'; }}?>配置文件数据库组件如下<?php//配置文件中需要返回一个关联数组return array(//告诉yii框架,自动导入类时,需要扫描的目录 'import'=>array( 'application.models.*', ), //组件 'components'=>array( 'db'=>array( 'connectionString'=>'mysql:host=localhost;dbname=chaoji', 'username'=>'root', 'password'=>'root', 'charset'=>'utf8', 'tablePrefix'=>'blog_', ), /*'cat'=>array( 'class'=>'ext.cat', )*/ ),);?>请大神指点
1 回答
扬帆大鱼
TA贡献1799条经验 获得超9个赞
看你的代码,有个地方我看不懂,
1、$model=new User();echo 123;exit;
exit;不是die;的别名吗?后面的代码好像不能执行吧....
如果不是这个原因,那么很可能是对象的安全性问题,不允许你插入数据
解决:在User Model类里
public function rules()
{
return array(
array('name', 'safe'),
),
}
- 1 回答
- 0 关注
- 164 浏览
添加回答
举报
0/150
提交
取消