jhack! 0 Denunciar post Postado Abril 1, 2015 Opa! Tudo bem pessoal? Como faço para mostrar uma nova linha na tela a cada dois segundos? Estou tentando fazer isso usando a função sleep(2), mas ao invés de aparecer uma linha e, depois de 2 segundos aparecer outra, e depois de 2 segundos aparecer a outra, a página demora dois segundo para carregar e aparece tudo de uma vez. Exemplo: <php echo "Ola Mundo! <br/>"; sleep(2) echo "Esta linha deve aparecer apos dois segundos.<br/>"; echo(2) echo "Essa linha tambem deve aparecer apos dois segundos."; ?> Não sei nada de PHP (como podem ver), na verdade ainda estou estudando lógica de programação e me propus a desenvolver os algoritmos em portugol das videos-aula, em PHP. Fazer isso no VisualG é tão fácil, é só usar a função timer()... To ralando pra fazer em PHP. rs Compartilhar este post Link para o post Compartilhar em outros sites
Diogo Libana 10 Denunciar post Postado Abril 1, 2015 Isso acontece na verdade porque o PHP é uma linguagem "do lado do servidor" a página é gerada "inteira" para depois ser exibida. Sempre utilizo javascript para fazer quaisquer tipo de interações dinâmicas... Caso precise de que depois de a página ser carregada ser exibida uma mensagem após dois segundos, faço assim: <script> //mostra a mensagem setTimeout("MinhaMensagem('Essa linha tambem deve aparecer apos dois segundos.')",2000); function MinhaMensagem(MSG){ document.getElementById('MinhaDIV').innerHTML = document.getElementById('MinhaDIV').innerHTML + "<br/>" + MSG; } </script> Para aparecer a cada dois minutos substitua SetTimeout por SetInterval. Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Abril 1, 2015 É possível fazer isso só com PHP. Use as Funções de controle de buffer Algo assim: for ( $i = 0; $i < 10; $i++ ) { echo $i; ob_flush(); sleep(1); } Compartilhar este post Link para o post Compartilhar em outros sites