Php Ajax函数在末尾返回1上的数据

Php Ajax函数在末尾返回1上的数据,php,ajax,wordpress,Php,Ajax,Wordpress,我用Ajax获得了一些html代码。 我检索代码。但最后我得到1(或11) 我注意到,如果我只调用一次require\u,函数只返回一次1。 如果我返回一个值而不调用get\u cart\u content(),那么代码末尾也没有1 我试了很多。。。喜欢 数据类型:html或json和json_解码。我还试过require,require,include等。 代码末尾总是有11个。。。如果我记录代码,它会被注释掉,但是如果我把它放在我的文档中,它会正常显示。我想这不是问题,但可能会有所帮助

我用Ajax获得了一些html代码。 我检索代码。但最后我得到1(或11)

我注意到,如果我只调用一次
require\u
,函数只返回一次1。 如果我返回一个值而不调用
get\u cart\u content()
,那么代码末尾也没有1

我试了很多。。。喜欢 数据类型:html或json和json_解码。我还试过require,require,include等。 代码末尾总是有11个。。。如果我记录代码,它会被注释掉,但是如果我把它放在我的文档中,它会正常显示。我想这不是问题,但可能会有所帮助

            <!-- <a  href=" " class="button wps-sc-cont btn"></a> -->
    </div>
   </div>   
</div>11

11

我们需要按照以下要求更改代码

add_action( 'wp_ajax_nopriv_getCart', 'getCart' );
add_action( 'wp_ajax_getCart', 'getCart' );

function getCart(){
    $response = array(
        'type' => 'success',
        'html' => get_cart_content()
    );
    wp_send_json_success($response);
    wp_die();
}
function get_cart_content() {
    ob_start();
    require_once('wps-cart-content.php');
    require_once('wps-cart-footer.php');
    return ob_get_clean();
}
$.ajax({
    type: "GET",
    url: '/wp-admin/admin-ajax.php',
    dataType: 'json',
    data: {
       action: 'getCart',
    },
    success: function (data) {
        switch(res.data.type) {
                case 'success' :
                       console.log(res.data.html)
                    break;
                case 'failure' :

                    break;
                default :
                    break;
            }
    },
    error: function (jqXHT, textStatus, errorThrown) 
        {console.log('Fehler');}
});

移除echo并检查其工作是否“成功包含,除非被包含的文件覆盖,否则返回1”(从
include
require
/
require\u once
上的手册中)如果包含的文件实际返回了任何内容,则例外,但是你用的那些显然没有。直接创建输出(它将直接进入输出缓冲区),因此所有附加到变量的内容都是require语句返回的
1
。由于您返回并回显它,您首先得到这些文件的输出,然后分配require_once语句的返回值。但是这些文件返回的是我想要的。返回正确的数据。除此之外,每个附加1。有解决的办法吗?这对我很有效!谢谢我使用它时没有
数据类型:“json”
,而是使用
ob_start()并返回
ob_get_clean()并且它工作!谢谢
$.ajax({
    type: "GET",
    url: '/wp-admin/admin-ajax.php',
    data: {
       action: 'getCart',
    },
    success: function (data) {
        console.log(data);
    },
    error: function (jqXHT, textStatus, errorThrown) 
        {console.log('Fehler');}
});
            <!-- <a  href=" " class="button wps-sc-cont btn"></a> -->
    </div>
   </div>   
</div>11
add_action( 'wp_ajax_nopriv_getCart', 'getCart' );
add_action( 'wp_ajax_getCart', 'getCart' );

function getCart(){
    $response = array(
        'type' => 'success',
        'html' => get_cart_content()
    );
    wp_send_json_success($response);
    wp_die();
}
function get_cart_content() {
    ob_start();
    require_once('wps-cart-content.php');
    require_once('wps-cart-footer.php');
    return ob_get_clean();
}
$.ajax({
    type: "GET",
    url: '/wp-admin/admin-ajax.php',
    dataType: 'json',
    data: {
       action: 'getCart',
    },
    success: function (data) {
        switch(res.data.type) {
                case 'success' :
                       console.log(res.data.html)
                    break;
                case 'failure' :

                    break;
                default :
                    break;
            }
    },
    error: function (jqXHT, textStatus, errorThrown) 
        {console.log('Fehler');}
});