PHP页面传送

时间:2014-09-06 11:50:41

标签: php redirect include

我正在尝试创建一个特殊的参数,当它被访问时,它会在我的网络服务器上打开另一个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!

谢谢!

1 个答案:

答案 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将帮助你。