yii でプロジェクトを作成しています。ユーザーが入力した電子メールを検証した後、新しいパスワードを入力するためのテキストフィールドを持つ password.php ファイルを表示しています。パスワード.php=
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'email-form',
'enableClientValidation'=>true,
));
echo CHtml::textField('Enter new password');
echo CHtml::textField('Repeat password');
echo CHtml::submitButton('Submit');
$this->endWidget();
ユーザーが新しいパスワードを入力して送信ボタンをクリックすると、古いパスワードを上書きするように、この新しいパスワードをユーザーテーブルのパスワードフィールドに挿入したいと思います。
コントローラーで、メソッドを次のように作成しました-
public function actionCreate(){
if(isset($_POST['email']))
{
$record=User2::model()->find(array(
'select'=>'userId, securityQuestionId, primaryEmail',
'condition'=>'primaryEmail=:email',
'params'=>array(':email'=>$_POST['email']))
);
if($record===null) {
echo "Email invalid";
}
else {
echo "email exists";
$this->render('Password');
if(isset($_POST['Password']))
{
$command = Yii::app()->db->createCommand();
$command->insert('User', array(
'password'=>$_POST['password'] ,
//'params'=>array(':password'=>$_POST['password'])
}
}
}
else{
$this->render('emailForm'); //show the view with the password field
}
しかし、新しいパスワードを挿入していません。どうすればこれを実装できますか...助けてください