加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 什么时候404不是404?

发布时间:2020-12-13 13:52:12 所属栏目:PHP教程 来源:网络整理
导读:我正在使用下面的jQuery调用来加载位于同一服务器上的.php文件. 但是,使用Chrome的javascript控制台,它在我试图加载的php文件中报告“404 not found”.虽然,我可以直接加载文件,只需在控制台中单击该文件即可. 此外,我可以直接从它报告404(未找到)的javascri
我正在使用下面的jQuery调用来加载位于同一服务器上的.php文件.

但是,使用Chrome的javascript控制台,它在我试图加载的php文件中报告“404 not found”.虽然,我可以直接加载文件,只需在控制台中单击该文件即可.

此外,我可以直接从它报告404(未找到)的javascript控制台复制文件的URL,打开一个新选项卡,将其粘贴到地址栏中,然后点击脚本,没有问题.

这是jQuery get方法特有的吗?什么可能导致get方法中的页面为404,但直接调用时执行正常?

$('.colorReset').click
    (
        function() 
        {
        var myImage = $('#theme :selected').text();
        $.get('<?php echo get_bloginfo('template_directory') ?>/colorReset.php',{theme: myImage,spot: '1'},function(data){doColor('#theme_header_color',data);});
        }
    );

    //script never gets to the doColor function,due to the apparent 404 on colorReset.php
function doColor(el,color)
    {
    $(el).val(color).trigger('keyup');
    $(el).attr('value',color);
    $(el).val(color);
}

这是源文件colorReset.php,由get …调用.

<?php
require_once('../../../wp-blog-header.php');

add_action( 'admin_init','check_user' );

function check_user()
    {
    if (!is_user_logged_in()){
        die("You Must Be Logged In to Access This");
    }
    if( ! current_user_can('edit_files')) {
        die("Oops sorry you are not authorized to do this");
    }
}

$myTheme = $_REQUEST['theme'];
$spot = $_REQUEST['spot'];
$myThemeColor = $myTheme."_color".$spot;

$file = "styles/".$myTheme."/template.ini";
    if (file_exists($file) && is_readable($file))
    {
    $ini_array = parse_ini_file($file);
     if($spot == 1){$myColor = $ini_array['color1'];}
     if($spot == 2){$myColor = $ini_array['color2'];}
     if($spot == 3){$myColor = $ini_array['color3'];}
     if($spot == 4){$myColor = $ini_array['color4'];}
    }
    else
    {
     if($spot == 1){$myColor = get_option('theme_header_color');}
     if($spot == 2){$myColor = get_option('theme_sidebar_color');}
     if($spot == 3){$myColor = get_option('theme_spot_color_alt');}
     if($spot == 4){$myColor = get_option('theme_spot_color_alt2');}
    }
echo $myColor;
?>
作为 described in another answer,加载wp-blog-header.php引导整个WordPress请求处理过程.鉴于您的脚本实际上不是WordPress帖子,此过程设置404标头以指示它找不到您要查找的内容.

因为它看起来像你真正想要的只是访问WordPress用户函数,你最好只包括wp-load.php,这应该允许你调用这些函数而不调用请求解析器.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读