Я следую некоторым онлайн-примерам, касающимся восстановления забытого пароля с помощью CakePHP.Вот код:
$temp = $this->User->findByEmail($this->data['User']['email']);
$user = $temp['User']['UID'];
$this->set('email', $this->data['User']['email']);
if($user)
{
$new_salt = UsersController::generateStr();
$new_password = UsersController::generateStr(5);
$temp_password = Security::hash((Security::hash($new_password,'md5',false) . $new_salt), 'md5', false);
$data = array('User' => array('UID' => $user, 'Password' => $temp_password));
$this->User->save($data, false, array('Password'));
$data = array('User' => array('UID' => $user, 'Salt' => $new_salt));
$this->User->save($data, false, array('Salt'));
$to = $this->data['User']['email'];
$subject = "RideShare Password Reset";
$message = "Your new RideShare password is " . $new_password;
$headers = "";
mail($to, $subject, $message, $headers);
$this->Session->setFlash('Your new password has been sent to' . $this->data['User']['email']);
}
Когда этот код выполняется, моя страница отображает эту информацию об отладке:
Query: INSERT INTO `users` (`Password`, `modified`, `created`) VALUES ('81a5392c1d9687811cfeb7e66c887a4a', '2011-07-08 23:53:05', '2011-07-08 23:53:05')
Query: INSERT INTO `users` (`Salt`) VALUES ('HjP1miaias')
Но когда я проверяю базу данных напрямую, перейдя к phpMyAdmin, я вижу, что значенияфактически не обновлялся.
Любой совет приветствуется.