0

我使用以下代码创建了一个新用户:控制器:

$this->User->createUser($this->data)

模型:

function createUser(){ 
    $this->create();
}

之后我想登录用户。我已经尝试过这个(在控制器中):

$this->Auth->login($this->data);
$this->redirect('home');

不幸的是,它不是那样工作的。难道我做错了什么?

4

1 回答 1

1

蛋糕1.3

在您的控制器中

$id = $this->User->createUser($this->data);
$this->data['User'] = array_merge($this->data['User'], array('id' => $id));
$this->Auth->login($this->data);
$this->redirect('home');

模型

在创建用户之前,您必须对用户输入的密码进行哈希处理,然后保存到数据库中

function createUser($data){ 
    $data['User']['password'] = md5($data['User']['password']);
    $this->save();
    return $this->id; // return id of last saved record
}
于 2013-10-22T14:27:06.923 回答