PHP条件- Javascript重定向

PHP condition - Javascript redirect

本文关键字:重定向 Javascript 条件 PHP      更新时间:2023-09-26

我有一个PHP 'if'条件,如果是真的,那么我想用javascript将用户重定向到其他地方。然而,它似乎不起作用,因为它总是重定向我,无论条件是否为真。

<?php
if (isset($_SESSION['lol'])) {
    ?><script type="text/javascript">
<!--
window.location = "http://www.test.org"
//-->
</script><?php
}
?>

这怎么可能?或者我怎样才能让它发挥作用?

在PHP中重定向:

<?
    if (isset($_SESSION['lol']) {
        header("Location: test.org");
    }
?>
编辑:但是如果你想使用你当前的代码,你需要回显脚本标签:
<?
    if (isset($_SESSION['lol'])) {
        echo "<script>window.location.href = 'test.org';</script>";
    }
?>

不管Javascript方法看起来有多简单,您都应该在PHP中进行重定向:

<?php
    header('Location: http://test.org');
    exit;
?>

首先,可能存在javascript不工作的情况(可能是故意关闭的,用户可能使用不兼容的浏览器,用户可能安装了浏览器插件,如NoScript等)

此外,您应该在重定向后停止代码执行(这就是为什么在我的示例中有exit),以便恶意访问者无法忽略重定向而只是读取页面内容。