0
ログインを抑制するためにPHPコードを完成させましたが、今は単純なjsまたはjqueryコードを使用してPHPからスロットルカウントダウンを取得してライブカウントダウンを行います。PHPコード内でカウントダウンjsカウントダウンを実装
私はPHPファイルにjsスクリプトを入れるべきですか?またはhtmlファイルですか?もしそうなら、コードを編集するにはどのようにすればいいですか?
これまでのところ、私は今、タイマーを示しPHPにスパンIDタイマーを入れているが、再び、私はPHPのライブタイマーに
私のPHPコードを取得いけない:
<?php
include('database.php');
function get_multiple_rows($getfailed) {
$rows = array();
while($row = $getfailed->fetch_assoc()) {
$rows[] = $row;
}
return $rows;
}
$throttle = array(1 => 1, 5 => 2, 10 => 30);
$getfailedq = "SELECT MAX(attempted) AS attempted FROM failed_logins";
if ($getfailed = $mySQL->query($getfailedq)) {
$rows = get_multiple_rows($getfailed);
$getfailed->free();
$latest_attempt = (int) date('U', strtotime($rows[0]['attempted']));
$getfailedq = "SELECT COUNT(1) AS failed FROM failed_logins WHERE attempted > DATE_SUB(NOW(), INTERVAL 15 minute)";
if ($getfailed = $mySQL->query($getfailedq)) {
$rows = get_multiple_rows($getfailed);
$getfailed->free();
$failed_attempts = (int) $rows[0]['failed'];
krsort($throttle);
foreach ($throttle as $attempts => $delay) {
if ($failed_attempts > $attempts) {
$remaining_delay = (time() - $latest_attempt) - $delay;
if ($remaining_delay < 0) {echo '<span id="timer">' . abs($remaining_delay) . '</span>';}
break;
}
}
}
}
?>
マイJS:
を<script>
var count=30;
var counter=setInterval(timer, 1000); //1000 will run it every 1 second
function timer(){
count=count-1;
if (count <= 0){
clearInterval(counter);
return;
}
document.getElementById("timer").innerHTML=count + " secs"; // watch for spelling
}
</script>
ありがとうございました – Serjio