gpt4 book ai didi

javascript - php里面js条件

转载 作者:行者123 更新时间:2023-12-02 20:57:56 25 4
gpt4 key购买 nike

我在 js 条件内有一个带有 php 函数的 js 倒计时。一切都很好,除了重新加载页面时 php 函数仍然会运行。

var countDownDate = new Date("2020/04/25 16:15:25").getTime();
var x = setInterval(function() {
var now = new Date().getTime();
var distance = countDownDate - now;
var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
var seconds = Math.floor((distance % (1000 * 60)) / 1000);
document.getElementById("demo").innerHTML = hours + "h " + minutes + "m " + seconds + "s ";
if (distance < 0) {
clearInterval(x);
document.getElementById("demo").innerHTML = "SESSION EXPIRED";
<?php block_user(2); ?>
document.getElementById("demo2").innerHTML = "User 2 blocked";
}
}, 1000);

最佳答案

如果 block_user(2) 实际上阻止了数据库中的用户,那么它似乎是在第一个页面加载时执行的。 PHP 将在页面加载时执行。它不会被推迟到 javascript 中的条件。如果您的功能阻止您多次阻止用户,这就是为什么您重新加载页面时它不起作用。您必须对 PHP 脚本进行一些异步调用。

if (distance < 0) {
clearInterval(x);
document.getElementById("demo").innerHTML = "SESSION EXPIRED";

$.post("block_user.php", {user_id:2}).done(function (response) {console.log(response);});

document.getElementById("demo2").innerHTML = "User 2 blocked";
}

然后 block_user.php 会在 $_POST['user_id'] 中查找 user_id 并执行 block_user($_POST['user_id']);

这是一个简化的解决方案,没有考虑安全性或清理您的帖子变量,但它是解决您的问题的开始。

关于javascript - php里面js条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61427070/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com