Estou desenvolvendo um sistema no padrão mvc (sem framework).
Em um determinado módulo do meu aplicativo, excluo uma informação no banco de dados e, teoricamente, precisaria atualizar a página para mostrar a nova realidade dos dados armazenados.
O problema é que não estou conseguindo realizar esta atualização de forma alguma. Desde ontem tenho procurado várias informações na internet sem sucesso.
Tentei várias atualizações de página com javascript (history.go(0), window.location.reload, window.location.href = window.location.href, meta tag refresh e etc). Tentei, também, após a conclusão da exclusão, redirecionar o usuário para página de listagem dos registros, mas nem assim funcionou. A atualização só ocorre quando requisito a página novamente no menu.
Pesquisei um pouco sobre ajax e jquery, mas não consegui progredir muito, pois não achei exemplos que oferecessem suporte a estrutura MVC.
Encontrei um comentário em outro fórum, apresentando o script abaixo como base para uma possível solução (segundo o autor, muito utilizado em chats):
<?php
// define o tempo limite do script (0 = infinto)
set_time_limit(0);
// executa o script ate o final independente do usuario sair da pagina
ignore_user_abort(true);
// envia algum dado antes de comecar a enviar o texto da pagina
for ($i = 0; $i<100; $i++)
echo " ";
// envia os dados do buffer pro usuario
flush();
ob_flush();
// enquanto o usuario estiver conectado, faz...
while (!connection_aborted()) {
echo "Tela sendo atualizada sem usar Javascript<br>";
// envia os dados do buffer pro usuario
flush();
ob_flush();
// "dorme" por 1 segundo
sleep(1);
}
?>
Devido a minha pouca experiência com programação, não consegui progredir muito com o exemplo acima e, também, tenho dúvidas se ele realmente me ajudaria.
Dessa forma, gostaria de pedir o auxílio de vcs. Há algum exemplo no qual possa me basear, um método para essa atualização com o próprio PHP, um tutorial para utilização de jQuery/ajax adaptado ao modelo mvc, qualquer coisa que ajude... Preciso muito solucionar isso o quanto antes.
Desde já, obrigado a todos.
Edição feita por: cjdj, 20/10/2010, 14:56.