php - Sleep() 不会延迟表单操作
问题描述
当我点击提交按钮时,我想要延迟 3 秒然后重定向。我的表单将重定向到另一个 PHP 站点。
我的代码:
<button
class="button actionContinue scTrack:unifiedlogin-login-submit"
type="submit"
id="btnLogin"
name="btnLogin"
value="Login"
pa-marked="1">
Einloggen
</button>
</div></div>
<input type="hidden" name="" value="">
</form>
<?php
if (isset($_POST['submit']))
{
sleep(3);
// AND NOW action;
}
?>
例子
<?php
if (isset($_POST['submit']))
{
sleep(3);
// AND NOW action;
redirect('Location:next page.php');
}
?>
为什么它不起作用?
解决方案
因此,注释中的基本调试表明$_POST['submit']
您期望的值实际上并不存在。这就是为什么您的睡眠不起作用的原因,因为您的状况IF
不正确。
所以下一步是调试为什么你没有那个 POST 数据。这是因为您没有将其作为表单元素。您将拥有btnLogin
,因为这是您在按钮中提供的名称。
name="btnLogin"
您可以测试您当前拥有的名称:
isset($_POST['btnLogin']))
或将按钮中的名称更改为Submit
:
<button
class="button actionContinue scTrack:unifiedlogin-login-submit"
type="submit"
id="btnLogin"
name="Submit"
value="Login"
pa-marked="1">
Einloggen
</button>
编辑:根据您在评论中的要求尝试此操作:
<?php
if (isset($_POST['btnLogin']))
{
sleep(3);
redirect('Location:next page.php');
}
?>
推荐阅读
- tensorflow - 类型错误:必须是实数而不是张量
- sql - SQL(访问)其中日期在不同日期字段的 6 个月内
- angular - 将参数从.net dll(或控制台应用程序)传递到角度应用程序(角度 5)
- javascript - 在旧的基础上初始化一个新的 highcharts 对象
- javascript - Bootstrap导航栏下拉菜单和汉堡不起作用
- android - MPAndroidChart:XAxisValueFormatter 中的 ArrayIndexOutOfBoundsException
- hadoop - Hadoop 3.1.1 启动 HDFS 服务的问题
- java - 是否可以从客户端公钥中提取信息以便在服务器上创建唯一文件夹?
- sql - Sql 查询查找只有一行的行(用于 exp 许可证)
- python - 将numpy字符串数组转换为日期时间