Heim > Backend-Entwicklung > PHP-Tutorial > Cannot modify header information headr函数有关问题,代码很简单

Cannot modify header information headr函数有关问题,代码很简单

WBOY
Freigeben: 2016-06-13 12:54:33
Original
756 Leute haben es durchsucht

Cannot modify header information headr函数问题,代码很简单
login.php

<br />
<html><br />
<title><br />
登陆界面<br />
</title><br />
<head><br />
<meta http-equiv="content-type" content="text/html;charset=utf-8" /><br />
</head><br />
<body><br />
<form action="loginController.php" method="post"><br />
<table><br />
<tr><td>用户名:</td><td><input type="text" name="username"/></td></tr><br />
<tr><td>密码:</td><td><input type="text" name="password"/></td></tr><br />
<tr><td><input type="submit" value="登陆"/><td><input type="reset" name="重新填写"/></td></tr><br />
</table><br />
</form><br />
</body><br />
</html><br />
<br />
loginController.php<br />
<html><br />
<title><br />
验证控制器<br />
</title><br />
<head><br />
<meta http-equiv="content-type" content="text/html;charset=utf-8" /><br />
</head><br />
<body><br />
<?php<br />
$username=$_REQUEST['username'];<br />
$password=$_REQUEST['password'];<br />
if($username=='123'&&$password=='123'){<br />
	header("location:Manage.php");<br />
	exit();<br />
} else{<br />
  echo '账号密码有误';<br />
}<br />
?><br />
</body><br />
</html><br />
<br />
<html><br />
<title><br />
管理界面<br />
</title><br />
<head><br />
<meta http-equiv="content-type" content="text/html;charset=utf-8" /><br />
</head><br />
<body><br />
<h1>欢迎管理员</h1><br />
</body><br />
</html><br />
<br />
输入用户名密码123<br />
错误提示如下:<br />
Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\sqlInjcetion\loginController.php:9) in C:\wamp\www\sqlInjcetion\loginController.php on line 13<br />
<br />
求解!<br />
另外3个php文件都是utf-8编码<br />
Nach dem Login kopieren


------解决方案--------------------
------解决方案--------------------
你那么多html代码就是输出了
搜索下php缓冲区 header
这个问题的解释还是很多的呀.............

header("location:manage.php")
也可以换成
eacho "<script>window.location.href='manage.php'</script>";

------解决方案--------------------
根据http原理(注意跟php没啥关系)
http头必须先于http实体输出
所以
从你的.php文件输出了第一个非 此时再输出http响应头则无济于事,werbserver也做不了这个事情了。
------解决方案--------------------
补充一句,header本身就是修改http响应头,重定向location:只是一种的一种用法(实际被加上了302响应码)
------解决方案--------------------
引用:
引用:采用js跳转或者将header前面的html代码删掉

我删除了前面的HTML代码。现在代码如下:
PHP code?12345678910


注意文件格式。bom头
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage