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.
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