Bonjour,
J'ai un script PHP qui prend plusieurs minutes a s'exécuter et je souhaite afficher l'avancement pour savoir ou ca en est. Ne connaissant pas du tout AJAX j'ai commencé a regarder comment ca marche
J'ai modifié mon PHP pour ecrire dans un fichier a chaque fin de boucle le numero de la boucle. Et avec ajax je vais lire le contenu du fichier toutes les 5 sec et je l'affiche a l'ecran.
Alors ca marche sur le petit exemple que je me suis fait et qui se contente d'aller lire le fichier avec le nombre de boucle effectuée, et je change la valeur contenue a la main. Par contre quand je le mets dans mon script php il n'affiche la page qu'une fois l'exécution du php terminée et donc je ne peux pas voir l'affichage de l'etat d'avancement. Par contre une fois la page affichée il va bien lire le nombre de boucle effectuée dans le fichier.
J'ai essayé de bufferiser la sortie avec php et de vider le buffer qui contient la fonction javascript et le champ pour l'affichage juste avant le gros du traitement PHP. Mais cela ne marche pas.
Est ce que je m'y prend mal? Il faudrait peut etre ouvrir une nouvelle fenetre pour afficher le compteur de la progression?
Si vous pouviez me donner un petit coup de main, merci.
Partager