こんばんは、簡単なログインシステムを実装しています。
Cakephp3を使って認証はたいぶ完成しました。
そこに、ログイン3回失敗すると1時間ログインできなくなる仕組みを作ろうとしています。
3回以上失敗してロックがかかってしまった利用者に、Flashメッセージを使って 「00:00までログインできません」というお知らせを出したいです。
Cakephpの公式サイトを参考し、以下のように実装してみましたが、うまく動いてません。
php
1//UsersController.phpの一部 2if(isset($expiration_date) && $now_date < $expiration_date) 3 { 4 // 時間表示できるといいけど。 5 $this->Flash->error('アカウントがロックされています。',['key' => 'locked', 'params' => ['expiration_date' => $expiration_date]]); 6 }
HTML
1<!--login.ctpの一部 --> 2<?= $this->Flash->render('locked'); ?>
php
1// /Element/Flash/error.ctpの一部 2<?php 3if (!isset($params['escape']) || $params['escape'] !== false) { 4 $message = h($message); 5} 6?> 7<div class="message error" onclick="this.classList.add('hidden');"><?= $message ?></div> 8 9<div id="flash-<?= h($key) ?>" class="message error"> 10 <?= h($message) ?>: <?= h($params['expiration_date']) ?> 11</div> 12
何か間違いやエラーがあればぜひ教えてください。
宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。