PHP头的奇怪连接已发送错误和javascript
编辑: 通过更好地阅读马里奥的答案解决了这个问题。在文件开头添加ob_start()解决了我的问题 最近我在php中发现了一个非常奇怪的行为:当出现某些javascript行时,php抛出“无法修改标题信息-标题已发送…”错误。PHP头的奇怪连接已发送错误和javascript,javascript,php,html,Javascript,Php,Html,编辑: 通过更好地阅读马里奥的答案解决了这个问题。在文件开头添加ob_start()解决了我的问题 最近我在php中发现了一个非常奇怪的行为:当出现某些javascript行时,php抛出“无法修改标题信息-标题已发送…”错误。 我读过很多帖子,说用header()函数修改页眉信息是不可能的,但我总能做到 代码是: if(this.innerHTML == "menu"){ document.getElementById("side_panel").style.left = "0px";
我读过很多帖子,说用header()函数修改页眉信息是不可能的,但我总能做到 代码是:
if(this.innerHTML == "menu"){
document.getElementById("side_panel").style.left = "0px";
document.getElementById("side_panel").style.paddingLeft = "5vw";
this.style.opacity = "0";
setTimeout(function(){document.getElementById("nav_button").innerHTML = "close";document.getElementById("nav_button").style.opacity = "1"},200);
}
else {
document.getElementById("side_panel").style.left = "-250px";
document.getElementById("side_panel").style.paddingLeft = "0vw";
this.style.opacity = "0";
setTimeout(function(){document.getElementById("nav_button").innerHTML = "menu";document.getElementById("nav_button").style.opacity = "1"},200);
}
当我只保留以下内容时,它会起作用:
if(this.innerHTML == "menu"){}
再加上:
if(this.innerHTML == "menu"){
}
else{
}
让php抛出错误
请帮帮我,我没有希望了。
感谢大家的出色工作。老实说,javascript无法影响PHP发送的标题-因为PHP在服务器上运行,javascript在PHP将整个页面发送到浏览器后在浏览器中运行。我认为问题在于,javascript在PHP更改标题之前修改了页面,所以PHP会抛出错误