将数据保存在cakephp数据库中


save data in cakephp database

我有一个cakephp web应用程序,我正在开发。我有一个UsersController.php文件,它处理所有用户的注册和登录。当用户登录时,他可以使用FeaturesController.php的功能。php中有一个视图文件,名为create。ctp。在创建。在ctp中,用户将一些数据插入到HTML表单中,并使用$this->Modelname->save($this->request->data)将这些数据保存到数据库中。

现在,我想添加到数据库的字段的用户名,做了/使用了那个HTML,但直到现在我还没有成功!我的代码是这样的:

$username = $this->Session->read('Auth.User.username');

,以便我将用户的用户名保存到变量$username中。

但是现在,我怎么把它插入数据库呢?我已经尝试了各种方法,但它没有工作:/

欢迎任何人的帮助,提前感谢:)

您不应该将用户名添加到表单中,这是不安全的,因为恶意用户只需修改HTML即可更改它。相反,您应该在保存之前设置它:

$this->request->data['Modelname']['username'] = $this->Auth->user('username');
$this->Modelname->save($this->request->data);

假设您正在使用身份验证组件$this->Auth->user('username');$this->Session->read('Auth.User.username');一样,顺便说一下,只是短一点。

$data['modelname']['dbfieldname'] = $username;
$this->modelname->save(data);