Welcome Guest, Not a member yet? Register   Sign In
json_encode & header() problem
#1

[eluser]Unknown[/eluser]
I have a function that handles an ajax/json request and responds with a string containing html. It contains the following code.

Code:
header('Content-Type: application/json');
echo json_encode($response); //send the response to the caller


When I the ajax call is made a "Opening validateAdd" dialog box opens up where validateAdd is the name of the ajax handler. I have worked with json before but have not seen this problem. Any ideas?

If I remove the header line the ajax json request completes but with an error as the header shows plain text and the ajax code expected json.

#2

[eluser]Unknown[/eluser]
I also tried the following with the same result ...

Code:
$this->output
->set_content_type('application/json')
->set_output(json_encode($response));

This dialog box that pops up happens with both windows and mac browsers.
#3

[eluser]CroNiX[/eluser]
Do you have code that executes below your echo json_encode() that is perhaps outputting something or setting another header? try putting "exit();" immediately after you echo the json out.




Theme © iAndrew 2016 - Forum software by © MyBB