我已经定义了一个函数,用于将用户重定向为登录系统的一部分:
function redirect_user($page = 'default.php') { // default value.
$url='http://' .$_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']);
$url=rtrim($url, '/\\'); //remove any trailing slashes
$url .= '/' .$page; //concat page to $url
header("Location: $url"); //redirect user
exit(); //quit script
} //end of redirect function
在登录脚本中,在我验证登录信息后,我成功地将用户重定向到登录页面:
redirect_user('includes/loggedin.php');
但是,我正在尝试为我的注册处理脚本执行相同的操作,并且不会重定向到登录页面。
我在脚本的开头定义了函数,并通过替换
插入了重定向函数if ($r) { //If it ran okay
echo '<h1> Thank you!</h1><p>You are now registered</p>'; //print message
}
与
if ($r) { //If it ran okay
redirect_user('login.php'); //redirect user to login
}
我试过
header('location: login.php');
exit();
并得到了相同的结果,一个带有注册处理网址的空白页。
脚本的注册部分有效,我在注册数据库中看到了这些信息,但重定向不像我期望的那样工作。