Colorbox不会在AJAX调用中执行PHP代码


Colorbox doesn't execute PHP code in AJAX call

我有一个PHP文件,并希望它通过AJAX加载在一个颜色盒模态弹出窗口,但文件内的PHP代码没有得到执行(正常的HTML标签,如div是可见的,只有当我删除所有PHP的东西)。我不知道为什么会这样。

我可以看到例如常量的名称(如EP_AVATAR_RESTRICTIONS),但不能看到它们的内容(在这种情况下,它只是文本)。

我的colorbox code:

$(".edit_avatar_link").colorbox({
        initialWidth:'386',
        initialHeight:'528',
        innerWidth:'386',
        innerHeight:'528',
        href: "<?php echo $setting['site_url'];?>/includes/forms/avatar_form2.php",
        fixed:true,
        scrolling:false,
        transition:'none',
        onComplete: function(){
            $("#cboxLoadedContent").appendTo("#cboxContent");
            var title = 'Edit Avatar';
            $('#cboxTitle').text(title);
        }
    });

我的php文件(avatar_form2.php):

<?php defined( 'AVARCADE_' ) or die( '' ); // Security ?>
<div id="edit_avatar_content">
<div class="edit_profile_header"><?php echo EP_EDIT_AVATAR;?></div>
<div class="edit_avatar_container">
    <div class="edit_profile_lable"><img src="<?php echo $user['avatar'];?>" width="75" height="75"></div>
    <div class="edit_avatar_element">
        <form enctype="multipart/form-data" id="form1" method="post" action="?task=edit_profile&done=avatar">
            <input name="new_id" type="hidden" id="new_id" value="<?php echo $new_id;?>" />
            <span class="style1"><?php echo EP_AVATAR_UP;?></span>
            <input name="img_file" type="file" id="img_file" size="50" /> <input type="Submit" name="Submit" value="<?php echo EP_AVATAR_BUTTON;?>"/>
            <?php echo EP_AVATAR_RESTRICTIONS;?>
        </form>
    </div>
</div>
</div>

你没有得到任何东西是正常的。你的colorbox调用一个程序化保护的php文件。

这行代码导致:

<?php defined( 'AVARCADE_' ) or die( '' ); // Security ?>

这是一个直接访问保护,所以你不能直接访问这个文件。这样做是为了使它可以从其他执行DEFINE('AVARCADE_','something');

的php文件中包含。

要么删除这行代码,要么创建另一个定义AVARCADE_常量的php文件,然后在该文件中包含vatar_form2.php