Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何根据给定的时间自动重定向页面?我应该使用javascript吗?怎样?_Php_Javascript_Jquery - Fatal编程技术网

Php 如何根据给定的时间自动重定向页面?我应该使用javascript吗?怎样?

Php 如何根据给定的时间自动重定向页面?我应该使用javascript吗?怎样?,php,javascript,jquery,Php,Javascript,Jquery,假设我有这个代码 $itemtoDisplayTime = $model->getItemTime() // e.g 03:00pm $currentTime = date('H:i'); //this is the system clock/time 使用javascript自动化重定向过程而不必刷新页面是否合适? 如果是,怎么做 假设$itemDisplayTime现在等于$currentTime,如果可能,如何在javascript或jquery中使用这些变量 if($itemD

假设我有这个代码

$itemtoDisplayTime = $model->getItemTime()  // e.g 03:00pm
$currentTime = date('H:i'); //this is the system clock/time
使用javascript自动化重定向过程而不必刷新页面是否合适? 如果是,怎么做


假设$itemDisplayTime现在等于$currentTime,如果可能,如何在javascript或jquery中使用这些变量

if($itemDisplayTime==$currentTime)
header( "refresh:0;url=yourpage.php" );

首先计算它应该重定向多少秒。然后使用以下方法中的秒数

就你的情况而言,时间可能有用

$seconds = strtotime($itemtoDisplayTime) - time();
有几种方法可以重定向

  • 从PHP发送
    Refresh
    标题

    header("Refresh: $seconds; url=$url");
    
  • 使用Javascript

    window.setTimeout(function(){
        location.href="desired url";
    }, seconds*1000);
    

  • 根据你的目标,我想说有两种可能的解决方案

    如果您想刷新页面以执行数据库任务,如果您的主机支持,我建议使用cron作业。因为这样你就可以关闭你的计算机,让任务自己在服务器端运行。一个例子是:(时间在你的主机网站上选择)


    如果这是为了其他目的,您必须使用ajax;因为如果您使用getItemTime,我认为在页面首次加载时只会得到一次,您需要每隔几分钟进行一次调用,以重新执行java函数并重新检查时间,但这将导致解决方案更加复杂。如果您想尝试这种方式,请更详细地解释您想要执行的任务,以便我可以编写特定的代码。

    @SergiuDumitriu我猜他将使用ajax检查当前时间,并且当两者相等时重定向到给定页面。此答案不会自动重定向页面,对吗?因为它是纯php,我认为javascript可以实现自动重定向……但是如何在示例中使用php条件而不必刷新或执行相同的重定向呢page@sasori是的,您必须执行脚本才能连续获取当前时间,尽管我更喜欢shiplu.mokadd.im回答选项2,毫秒有什么用?,因为我的目标在PHP中是这样的,
    if($itemtoDisplayTime====$currentTime){自动重定向页面}
    如果要执行这样的
    if
    语句,需要每分钟运行一次查询。我不会这么做的。最好启动一个计时器,在一段时间后重定向。首先计算持续时间,然后启动计时器。请参阅update.option 1,不会自动重定向对吗,假设用户正盯着页面,等待获取项目displayed@sasori它将在特定时间后自动重定向。
    php -q /home/path_to_file/your_link.php >/dev/null 2>&1