我的代码在学校服务器上正常工作,但现在我更改了主机,页面没有重定向。我尝试了很多东西,但没有一个能奏效。谢谢你的帮助!
我的代码:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<?php require_once('baza.php'); ?>
<?php
session_start();
$user=$_POST['user'];
$pass=$_POST['pass'];
$encrypted_pass=md5($pass);
$sql="SELECT * FROM uporabniki WHERE uporabnik='$user' and geslo='$encrypted_pass'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count==1){
$_SESSION['user']=$user;
$_SESSION['pass']=$pass;
session_write_close();
header('Location: dostop.php');
}
else {
echo "Napačno uporabniško ime ali geslo.<br>";
echo "<a href='vpis.php'>Nazaj na vpis</a> ali ";
echo "<a href='index.php'>nazaj na Domačo stran.</a>";
}
?>
</html>
答案 0 :(得分:1)
两件事:
只能在发送任何其他输出之前发送标头。这包括从doctype到head的行。您需要在此之前发送标题 - 甚至在空格之前。
发送标头后,您确实需要直接添加die();
电话。否则,即使将重定向用户,脚本的其余部分仍将继续在后台执行。根据应用的不同,这可能会有轻微麻烦到绝对灾难性。
答案 1 :(得分:0)
在die()
exit()
或header()
功能