[英]How I can redirect to page in php?
我尝试为活动页面制作一个登录表单。 注册也完成了。 我的问题是,当我成功登录后,无法使用“ header(location :)”重定向到起始页。 请帮助我,或修复PHP的错误。 谢谢!
注意:php的链接是示例,不是真实的。
<?php
$hostname="host"; // Host of MySQL
$user="user"; // Username at MySQL
$password="pass"; // Password at MySQL
$dbname="db"; // Database on MySQL
$connection=mysql_connect($hostname, $user, $password);
if(! $connection)
{
die(''.mysqlerror());
}
mysql_select_db($dbname, $connection) or die('');
$given_email=mysql_real_escape_string($_POST['email']);
$given_pass=mysql_real_escape_string($_POST['pass']);
$sql="SELECT * FROM users WHERE email='$given_email' and password='$given_pass'";
$result=mysql_query($sql) or die(mysql_error());
$row=mysql_fetch_array($result);
$active=$row['active'];
$count=mysql_num_rows($result);
if($count==1)
{
//echo "OK";
header( 'Location: http://www.yoursite.com/new_page.html' ) ;
//setUrl ("http://testseite.aufderlicht.bplaced.de/loggedin/start.html");
}
else
{
setUrl ("http://testseite.aufderlicht.bplaced.de/login/err/err.html");
}
//mysql_close($connection)
?>
有时,我只是在标头中添加“ /”相对路径:
header ('Location: /');
但是,建议这样做:
header ('Location: http://example.com/');
只这样做是行不通的:
,如规格所示: header ('Location: ');
注意:HTTP / 1.1需要一个绝对URI作为»位置的参数:包括方案,主机名和绝对路径,但是某些客户端接受相对URI。 通常,您可以使用$ _SERVER ['HTTP_HOST'],$ _ SERVER ['PHP_SELF']和dirname()从您自己的亲戚那里创建绝对URI:
另外,注意事项:
不要以纯文本形式存储密码 。 甚至认为此说明不能解决您的代码,这也非常重要。
在每个die('')
包含一些错误。 按照他们的立场,他们只是杀死脚本而没有提供任何有用的信息。 完全有可能其中之一被触发了。 例如:
mysql_select_db($dbname, $connection) or die('Could not select database');
您可以使用Javascript而不是PHP页面进行重定向,尤其是因为某些Web主机不允许在文件中间使用header()。
这是一个例子:
echo "
<script type='text/javascript'>
window.location.replace('http://www.yoursite.com/new_page.html');
</script>";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.