【问题标题】:Internet Explorer's Weird Behavior With PHPInternet Explorer 对 PHP 的奇怪行为
【发布时间】:2015-01-01 11:18:01
【问题描述】:

我有一个 php 代码 list.php 在 Internet Explorer 9、10、11 和 chrome 上的工作方式不同。

我使用<a href=$_SERVER[PHP_SELF]?no=$next_list> 列出分页。 在 Chrome 和 IE 11 中,此代码运行良好,这意味着当我单击链接时,我会被定向到 mydomainname.com/list.php?no=10。

但在 IE 9 和 10 中,我被定向到 list.php?no=10 并遇到“找不到页面”错误。换句话说,我被定向到一个可靠的“文件名”而不是“域地址+文件名”。

在点击分页链接之前,我在 IE 9 和 10 中注意到的另一个行为是地址显示为 mydomainname.com//list.php。

我已经包含了 html5shiv.js 和 respond.js 用于 IE 性能。

是否像 $_SERVER 或 PHP_SELF 没有为旧 IE 正确配置?我将不胜感激任何帮助。谢谢!

【问题讨论】:

  • 我无法阻止自己说“不要使用 IE 和不要使用 PHP”!
  • 浏览器不处理 PHP 代码;他们处理从服务器获得的 HTML 代码(可能是用 PHP 生成的)。展示一个可重现的案例,最好是一个最小化的 HTML 文档。在 HTML 层面找出原因后,是时候查看 PHP 代码并弄清楚需要如何修改了。
  • 但问题是它只在 IE 9 和 10 上出现问题。那不应该是旧 IE 版本的兼容性问题吗?

标签: php html sql-server internet-explorer


【解决方案1】:

试试这个:

<a href=/$_SERVER[PHP_SELF]?no=$next_list>

注意“/” - 这会让你总是回到根目录

你是这个意思吗?

【讨论】:

  • 我的意思是......假设我在一个页面'google.com/list.php'中。在 Chrome 和 IE 11 中,$_SERVER[PHP_SELF] 链接将我定向到“google.com/list.php”。而在 IE10 和 9 中,它会将我定向到“list.php”,这不是有效的地址。我尝试了您的建议,将/ 放在前面,但即使像 IE10,9 那样使用 chrome 和 IE11,它也会将我引导至 'google.com/list.php'。 IE...它很痛苦....
  • 您说:“我尝试了您的建议,将 / 放在前面,但它引导我访问 'google.com/list.php'”不是您想要的吗?
【解决方案2】:
<?php

$next_list = 12;

?>
<body>
    <?php echo "<a href=$_SERVER[PHP_SELF]?no=$next_list>test</a>"; ?>
</body>

我无法用上面的测试代码重现问题,也许你有一个链接可以提供?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-22
    • 1970-01-01
    • 1970-01-01
    • 2010-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多