包含文件,如果没有加载重定向到另一个页面

时间:2016-03-24 11:25:46

标签: php

我知道可能是一个愚蠢的问题,我知道如何使用meta / js重定向到另一个页面但是可以包含这样的文件

include 'file.php';

如果在X秒之后file.php没有加载以将访问者重定向到另一个页面?

4 个答案:

答案 0 :(得分:3)

在加载/包含file.php之前,您可以检查文件是否存在。请查看此链接file_exists。如果它不存在,则重定向到您想要的页面。请检查此链接header

根据您的要求:

  

是否可以在此放置一些计时器或其他东西不立即重定向?

我才明白你想要向用户展示该页面未被加载并且即将重定向到另一页面。即使您使用睡眠,它也会延迟该过程并且不会向用户显示任何内容,并且在该延迟之后它将立即重定向。

如果您想向用户显示某些文字或通知 ,您可以这样做。

<?php
if(!file_exists($file)){
    include('Notification_File.php');
}else{
    include($file);
    // include code regarding to this page if $file is existed
}
?>

在Notification_File.php文件中,您可以执行以下操作。

<div>
    Unable to load regarding file.
</div>

<script>
    setTimeout(redirectPage, 5000);
    function redirectPage() {
        window.location = "http://www.yoururl.com";
    }
</script>

答案 1 :(得分:2)

您可以查看包含

的返回值
if ((include 'file.php') == false) {
    header('Location: ' . $url);
}

答案 2 :(得分:2)

你可以这样做

if(!file_exists($file)){
    // redirect here
}else{
    include($file);
}

答案 3 :(得分:2)

$filename = '/path/to/file.php';

if (file_exists($filename)) {
    include $filename;
} else {
    header( "refresh:5;url=your_url.php" );
}

或者您可以使用javascript进行重定向

setTimeout(function () {
   window.location.href = 'http://your_site.com/your_url.php';
},5000);