flush() PHP + AJAX - Retornar echos no processamento do arquivo php
Boa tarde galera do iMasters.
Passei a tarde toda pesquisando sobre isso.
É o seguinte.
Eu tenho uma requisição $.ajax:
$.ajax({
url: 'modules/uXML/inc/capture.php',
success: function(data){
$('div#xml-retorno').append(data);
}
});E tenho um arquivo em PHP (capture.php)
@apache_setenv('no-gzip', 1);
@ini_set('zlib.output_compression', 0);
@ini_set('implicit_flush', 1);
for ($i = 0; $i < ob_get_level(); $i++){ob_end_flush();}
ob_implicit_flush(1);
$i = 0;
while($i < 5){
echo $i . '<br / >';
flush();
sleep(1);
$i++;
}Eu quero que, a cada loop do while, os echos que forem retornados devem aparecer no sucess do $.ajax. Eu já vi um exemplo funcionando, mas não consegui fazer também.
O que achei foi esse flush(); do PHP, onde parece que ele força o arquivo mandar o resultado na hora que foi criado, e não no final de tudo.
Preciso disso pois estou criando um sistema de log na tela, onde a cada laço uma mensagem deve ser exibida.
Então galera, o que estou fazendo de errado?
Agradeço a ajuda de todos..
Boa tarde..
Discussão (6)
Carregando comentários...