weixin_33691700 2014-10-01 04:25 采纳率: 0%
浏览 133

隐藏php echo输出

i'm sending data to a javascript function from a php script with help of ajax.

echo json_encode($rows);

The issue i'm having is that i'm running the php script right when the page loads, and the output is then displayed on the page, which I dont actually want to display. I tried to hide the echo with ob_end_clean() but this kinda breaks everything.

  • 写回答

1条回答 默认 最新

  • weixin_33701617 2014-10-01 04:31
    关注

    I am sure you are making ajax request to same page, in that case you can check the request for ajax like this

    /* AJAX check  */
    if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) &&  
        strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
       /* your ajax here code will go here */
       header('Content-type: application/json');
       echo json_encode($rows);
       exit();
    }
    
    //non ajax code ...
    ...
    

    that way echo will only run if its an AJAX call

    评论

报告相同问题?