如果找不到文件,则刷新页面

时间:2016-02-15 20:33:22

标签: php redirect header

我的代码有效。如果添加的值不存在,它会更改lang值。但是,它需要刷新才能进行更改。

if(isset($_GET['lang']) && file_exists('lang/'. $_SESSION['lang'] . '.php')) {
    $_SESSION['lang'] = $_GET['lang'];
} else {
    $_SESSION['lang'] = 'en'; // default value
}
if(!isset($_SESSION['lang'])) {
    $_SESSION['lang'] = 'en'; // default value
}
include('lang/'. $_SESSION['lang'] . '.php');

使用上面的代码,它确实将lang更改回en,如果其他lang不存在但是,它显示错误文件不存在,那么刷新页面工作正常后。 有没有办法在将lang设置回en?

后立即重定向或刷新页面

1 个答案:

答案 0 :(得分:0)

您的逻辑可能会出错。

if(isset($_GET['lang']) && file_exists('lang/'. $_GET['lang'] . '.php'))

您发布的第一个if语句会检查SESSION [' lang']文件是否存在。它似乎应该检查GET [' lang']文件是否存在。

您可以使用标题功能移动页面。

header("Location: http://yoursite.com/yourpage.php");

您还可以限制错误报告,以便它不会显示文件不存在的错误。

error_reporting(0);