首頁 > 後端開發 > php教程 > Cannot modify header information headr函数有关问题,代码很简单

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-13 11:13:29
原創
693 人瀏覽過

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 />
登入後複製


------解决方案--------------------
------解决方案--------------------
你那么多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头
相關標籤:
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
javascript - js正規符合特定字串
來自於 1970-01-01 08:00:00
0
0
0
為什麼說非物件呼叫成員函數fetch()
來自於 1970-01-01 08:00:00
0
0
0
資料庫設定檔必須要用二維數組
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板