为了账号安全,请及时绑定邮箱和手机立即绑定

如图是关于yii操作数据库失败,请高手指点一下~

如图是关于yii操作数据库失败,请高手指点一下~

Yii
慕妹3242003 2022-05-08 13:09:45
控制器写法如下//用户管理控制器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'),
),
}


查看完整回答
反对 回复 2022-05-10
  • 1 回答
  • 0 关注
  • 164 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信