Faire patienter le visiteur après un post => script [Résolu]

Signaler
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011
-
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
-
Bonjour,
Je ne sais pas si celà peut interesser des personnes j'ai une page avec formulaire qui post vers une seconde page.
L'enregistrement de l'enssemble du formulaire prend environs 20 secondes par la machine (car on utilise un sock ... if ($sock = @fsockopen($host, $port)) {  ..)

Je souhaiterais simplement que la personne vois affiché 'veuillez patienter' pendant les fameuses 30 secondes chrono au lieu d'attendre le chargement de la page sans informations.

Est ce possible ? grossomodo je veux afficher le html pendant que le script travail

<?PHP
ob_start();
....
echo'
<HTML>
... veuillez patienter
</HTML>
';

script php ouverture de sock ect ...
header("Location: index.php");
ob_end_flush();
?>

3 réponses

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
38
Salut,

faut faire echo sur un code genre
désolé pour le retard....
, ensuite, faire un fflush en php pour envoyer le cache, et ensuite appliquer un truc très con : un <script>document.getElementById("machin").style.display="none";</script> tout à la fin du script...

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Hello,

j'ai fait un code dans ce sens :
http://www.phpcs.com/codes/PHP5-NOTIMEOUT-PACKAGE_39866.aspx

Pour ce que tu veux faire, tu n'es pas obligé d'utiliser le package, tu peux juste t'inspirer du contenu et de la méthode utilisée pour parvenir à tes fins.
Messages postés
88
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 août 2011

il sagirait de faire un timeout ? je ne parviens pas à cibler ce qu'il faut faire j'avou que je m'attendais plutot à une forme de priorité comme un ob_start(); ... ou encore un wait() pour la partie script (malheureusement uniquement pour php 5 ou +). est ce que tu pourais préciser de quel partie j'aurais besoin pour celà ?