对于http://www.filmiclub.com/,我在W3C验证器中收到此错误:
元素
的必需实例head
缺少子元素title
但是当我复制HTML并使用"通过直接输入"进行验证时,HTML是100%无错误且没有验证错误。
你知道为什么PHP会因为这个错误生成HTML吗?
答案 0 :(得分:0)
选择"显示来源"选项并单击重新验证,您将看到原因。您的PHP脚本在收到验证器的请求时崩溃,因此PHP会发出自己的错误消息响应,而不是您的网站。
<h4>A PHP Error was encountered</h4>
<p>Severity: Notice</p>
<p>Message: Undefined index: HTTP_ACCEPT</p>
<p>Filename: helpers/common_helper.php</p>
<p>Line Number: 7328</p>
显然,W3C的验证程序发送的HTTP请求不具有Accept:
标头,但您的PHP代码需要HTTP_ACCEPT标头存在并失败,因为它是不存在。
更改您的PHP代码以检测Accept
标头的存在(或缺少),如下所示:
if( isset( $_SERVER['HTTP_ACCEPT'] ) ) {
// code here
}