2016-11-30 81 views
0

我想在客户使用忘记密码选项时邮件验证邮件上的密钥字段值。我的查询工作正常。当我在视图中调试时,我能够看到提交的值,但在控制器中,我无法访问该值。如何访问控制器中的cakephp模型值

这是我的控制器查询。

public function forgot() { 
    if ($this->User->validates()) { 
    $auserlogin = $this->User->forgot($this->data['user']['email']); 
    $this->set('auserlogin', $auserlogin); 
    $message="Someone requested to reset password \n\n"; 
    $message=$message."Verify Key : ".$auserlogin['0']['user']['verifykey']."\n\n"; 
    $message=$message."Thanks\n\n"; 
    $Email = new CakeEmail(); 
    $Email->from(array('[email protected]' => 'mail')) 
    ->to($this->data['user']['email']) 
    ->subject('Forgot Password') 
    ->send($message); 
    return $this->redirect(array('controller'=>'users','action'=>'password')); 
    } 
} 

鉴于一部分,我能够看到的查询是通过这个

$auserlogin['0']['user']['verifykey']; 

工作,但我想邮寄这个verifykey给用户,所以我使用

$message="Verify Key : ".$auserlogin['0']['user']['verifykey']."\n\n"; 

OR

$this->set('verifykey', $auserlogin['0']['user']['verifykey']); 
$message="Verify Key : ".$verifykey."\n\n"; 

两者都不工作我ñ邮件我不是邮件接收变量值我只得到

Verify Key : 
+0

哪个版本的CakePHP你正在工作,并请分享形式的部分过于 –

+0

@AmanRawat 2.4.6 – ptailor

+0

你能共享控制器功能和表单部分? –

回答

0

型号名称应该是大写的内部控制。 $ auserlogin [0] [ '用户'] [ 'verifykey']

幸得newbee-dev

+0

我明白了。这是因为在本地它不区分大小写(模型名称或索引),但在实况中它是。纠正我,如果我错了。我曾经遇到过这种情况。 – Beginner

相关问题