CakePHP3を使っています。
Userテーブルなどに、ユーザーのログインパスワードを保存しますが、
その時にCakePHPのパスワードハッシュの機能を使ってDBにはハッシュ化されたパスワードが保存されるようにしています。
ユーザー情報を編集する時、
DBからfindしたデータをビュー側にセットし、
ビュー側では下記のように表示させます。
$this->Form->control('username') $this->Form->control('password')
この時、編集フォームにはハッシュ化された状態のパスワードが入っています。
usernameだけを編集して、送信した場合にハッシュ化したパスワードが送信されてパスワードが上書きされてしまうと思うのですが、
どのように扱うのが良いのでしょうか?
私は通常の編集時はパスワードを編集できないようにする。
パスワードの変更のみを別のフォームに分ける。
ということしか思いつきませんでした。
ユーザー情報としては、
①サービスを利用しているユーザーの情報
②管理画面などのadminユーザーの情報
の2種類で、どのような情報を扱うかによっても変わると思うのですが・・・
どのように扱うのが良いか、ご教授頂けますと幸いです。
よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。