0

Internet Explorer 显示以下经典错误: Parse error: syntax error, unexpected $end in C:\xampplite\htdocs\obg001\tpl\chooseStart.tpl.php on line 133 这通常是缺少护腕,但是有两件事我不完全理解:

1.- php_error_log 没有报告任何错误

2.- 错误只出现在 IE

我自己没有发现任何丢失的护腕。除了括号之外几乎没有其他任何内容的代码是:

    <?php
        if ($_SESSION['game']['status']=='OPEN'){
    ?> 
    <?php
                        foreach($gamers as $gamer){
            }
    ?>

    <?php
        }else{
    ?>
    <?php
            foreach($gamers as $gamer){
            }
        }
    ?>
    <?php 
        if($_SESSION['game']['status']=='CHOOSING'){         
    ?>
    <?php
        }
        else if ($_SESSION['game']['status']=='DONECHOOSING'){
    ?>
    <?php
        }
        else if ($_SESSION['game']['status']=='ROLLING'){
    ?>
    <?php 
            if ($canRoll['result']==true){
    ?>
    <?php        
            }else{
    ?>
                <?php  ?>    
    <?php
            }
    ?>    
    <?php
        }else if ($_SESSION['game']['status']=='DONEROLLING'){
            if($_SESSION['game']['userId'] == $_SESSION['user']['userId']){
    ?>
    <?php
            }
        }else {        
            if($_SESSION['game']['userId'] == $_SESSION['user']['userId']){        
    ?>
    <?php
            }
        }
    ?>

如果您想查看没有截止的代码,请转到此处

非常感谢你。

服务器配置:

  • 操作系统:windows 7 x64
  • ApacheFriends XAMPP 1.7.7 版:
    • 阿帕奇 2.2.21
    • MySQL 5.5.16(社区服务器)
    • PHP 5.3.8 (VC9 X86 32 位线程安全) + PEAR
  • php.ini

更新

如果我得到它正确我的 php.ini 应该记录一切:

 error_reporting = E_ALL | E_STRICT
 display_errors = On 
 log_errors = On
 error_log =  "\xampplite\php\logs\php_error_log"

此外,该项目过去和现在都是由我自己创建和编码的,所以我确信没有一个指令不记录任何包含中的错误。

更新 2

如果我故意在该代码的最后一行添加一个结束括号,我会在 php_error_log 中得到以下行:

[12-Jul-2012 22:23:30] PHP Parse error: syntax error, unexpected '}' in C:\xampplite\htdocs\obg001\tpl\chooseStart.tpl.php on line 139

所以PHP毕竟是登录解析错误,这应该在IE加载页面时发生,而它又没有。

我终于可以补充一点,即使在 iPad 上,页面也能完美加载,所以这对我来说没有多大意义。

4

1 回答 1

1

问题取决于 IE,它保留旧页面的缓存版本,而不调用应用程序。

正在开发中建议发送此标头

Cache-Control: no-cache
于 2012-07-12T21:02:44.833 回答