我有一个非常奇怪的问题,我不知道该怎么办。我的网站似乎可以正常工作除了Internet Explorer之外的所有浏览器,所以我一直在试图找出原因。
我把它缩小到我在我的网站中包含的文件,这个文件是一个php类,它有许多不同的功能,比如登录getter和setter等等。
我从我的页面中取出了所有的PHP代码并且它渲染得很好,所以我逐行添加了php并释放它在我使用它时停止工作:
require_once 'classes/Membership2.php';
有谁知道为什么有些PHP代码会破坏我网站的风格。
关于此事的更多细节,我有许多居中的div,它们都有弯曲的边缘和阴影。因此,通过取走php我可以看到IE正在正确加载页面,没有不兼容性或类似的东西。
以前有人有这样的问题吗?虽然我正在等待一两个令人讨厌的东西,但我将删除功能和部分代码,直到我可以缩小它。 (我会给代码,但文件有很多行代码。)
感谢您的帮助。
哦,是的,我正在Internet Explorer 9上测试,其他所有浏览器都是最新版本或足够接近。
好的,所以我已经做了一些深入研究,我发现如果我删除了类中的所有代码(所有函数)并在include文件中保留just和empty类它仍然不起作用。好的,所以在我看来,这意味着功能并不是解决这个问题的方法。所以我删除了一切,所以现在包含指向空白的php文件。这工作和页面呈现它应该但显然没有功能,我无法登录或类似的东西。我决定添加一个构造函数而不是将其保留为默认值,此函数除了返回true之外什么都不做;它让网站再次陷入困境。
这些信息会改变什么吗?此外,我重申我没有得到此错误或任何其他浏览器,但Internet Explorer 9(没有尝试任何其他IE版本)。
再次感谢您的帮助。
好的,所以我解决了这个问题。在我的PHP课程开始时,我使用了
<!-- blah blah blah -->
忘记本文档中只有PHP而且没有HTML。因此,当我包含文件时,它只是将其输出到我的源代码中并且搞砸了,应该使用PHP注释样式。
仍然奇怪的是,除了IE以外的每个浏览器都忽略了这个并开始了它的业务,甚至@blankabout建议的网站也没有给我任何错误(虽然我保证这是因为它包含的PHP文件的一部分而不是HTML本身)。
答案 0 :(得分:1)
鉴于你的php,因为它在服务器上运行,应该永远不会真正到达浏览器,它可能是一些未终止的HTML或类似的导致问题。也许PHP正在导致意外的HTML中断。
答案 1 :(得分:1)
正如@fajran所说,在浏览器上用“查看源代码”保存两个输出并比较它们以找出不同之处。要比较输出,请使用winmerge或类似工具。一旦你现在哪个文本产生了麻烦,在包含文件中修改它。