我正在尝试创建一个特殊的参数,当它被访问时,它会在我的网络服务器上打开另一个php文件,这就是我一直在尝试做的事情
<?php
$id = ($_GET['id']) ? $_GET['id'] : $_POST['id'];
switch($id)
{
case 'account':
require 'pages/cp.php';
break;
}
?>
因此,当用户进行身份验证时,请说:http://www.test.com/?id=account,它应该自动将用户授权给文件cp.php。
问题是它没有重定向,它只是保留在index.php文件中。
注意:上面的PHP代码存在于index.php!
中谢谢!
答案 0 :(得分:1)
require()就像require_once()或include()实际上只是将文件包含到当前脚本中......它基本上将来自'pages / cp.php'的源放在那里 - 你包含它的地方。 / p>
如果要将用户重定向到新的URL /链接/文件,则应使用标题:
header("Location: http://www.example.com/");
在设置标题之前,确保没有输出(甚至没有输出php文件中的某些HTML,或者除了常见错误之外的空格)(或者常见错误),否则它将失败。
如果在发送标头之前需要输出,请务必使用ob_start();和ob_flush() - google,stackoverflow或php-manual将帮助你。