[PHP] probleme avec la fonction SLEEP()
m_jaz3
-
rafou -
rafou -
Bonjour,
j'essai tout betement de faire une page qui m'afficherait un texte et au bout de quelques secondes un autre
voici le code que j'ai fait
Code :
Le probleme est qu'au lieu que le premier texte s'affiche puis le second apres 2 secondes , et bien le delai d'attente (2 secondes ) s'efectue pendant le chargement de la page.Et quand la page est completement chargée je trouve les 2 textes deja ecrits.
bizarre non.
Quelqu'un aurait il une idee??
merci
j'essai tout betement de faire une page qui m'afficherait un texte et au bout de quelques secondes un autre
voici le code que j'ai fait
Code :
<?php echo '<html> <body> <p align="center"> </p> <p align="center"> </p> <p align="center"> </p> <p align="center"> </p> <p align="center"><b><font face="Verdana" color="#008000">CLIENT SUPPRIMÈ AVEC SUCCÈS</font></b></p> </body> </html>'; sleep(2); echo 'test'; ?>
Le probleme est qu'au lieu que le premier texte s'affiche puis le second apres 2 secondes , et bien le delai d'attente (2 secondes ) s'efectue pendant le chargement de la page.Et quand la page est completement chargée je trouve les 2 textes deja ecrits.
bizarre non.
Quelqu'un aurait il une idee??
merci
A voir également:
- [PHP] probleme avec la fonction SLEEP()
- Fonction si et - Guide
- Dont sleep - Télécharger - Divers Utilitaires
- Easy php - Télécharger - Divers Web & Internet
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
6 réponses
tout bête:
Le PHP s'exécute coté server, donc quand la page ce charge ton script est lue et exécuter par le server, PUIS elle apparait. Donc ton serveur a bien attendu avant d'exécuter la suite, mais apres avoir attendu il a exécuter le reste et t'as afficher le résultat.... si tu veux faire attendre le client et non pas le serveur utilise le java script...
Bonne journée
Le PHP s'exécute coté server, donc quand la page ce charge ton script est lue et exécuter par le server, PUIS elle apparait. Donc ton serveur a bien attendu avant d'exécuter la suite, mais apres avoir attendu il a exécuter le reste et t'as afficher le résultat.... si tu veux faire attendre le client et non pas le serveur utilise le java script...
Bonne journée
BON!!!
j'ai réglé le probleme avec du JAVASCRIPT
[code]
<Script language="JavaScript">
setTimeout("document.location = 'ma_page.php' ", 2000)
</script>
[/code]
Si ca interesse qqun
je sais meme pas si je dois mettre le post comme résolu.
Avis au moderateur.
j'ai réglé le probleme avec du JAVASCRIPT
[code]
<Script language="JavaScript">
setTimeout("document.location = 'ma_page.php' ", 2000)
</script>
[/code]
Si ca interesse qqun
je sais meme pas si je dois mettre le post comme résolu.
Avis au moderateur.
ben ecoute il se passe rien.
De toute maniere, le probleme n'est pas la .
Pourquoi devrais je contourner un fonction aussi simple que sleep().
Pourquoi cette fonction agit avant l'pparition du premier texte .c'est a dire pendant le chargement de la page??
merci
De toute maniere, le probleme n'est pas la .
Pourquoi devrais je contourner un fonction aussi simple que sleep().
Pourquoi cette fonction agit avant l'pparition du premier texte .c'est a dire pendant le chargement de la page??
merci
salut
j'ai testé ton code et regarde la reponse que je reçois:
0 sec
c'est comme si il y avait pas eu de delai
ca me rend dingue
j'ai testé ton code et regarde la reponse que je reçois:
0 sec
c'est comme si il y avait pas eu de delai
ca me rend dingue
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
essai ca pour voir :)
1. <?php
2. function getmicrotime(){
3. list($usec, $sec) = explode(" ",microtime());
4. return ((float)$usec + (float)$sec);
5. }
6. $time_start = getmicrotime();
7. for ($i=0; $i < 1000; $i++){
8. //ne rien faire, pendant un millier de fois...
9. }
10. $time_end = getmicrotime();
11. $time = round($time_end - $time_start, 3);
12. echo "<font face='Verdana, Arial, Helvetica, sans-serif' size='1' color='#FFFFFF'> Page générée en $time secondes</font>";
13. ?>
( https://forum.hardware.fr/hfr/Programmation/php-getmicrotime-sujet_15228_1.htm )
1. <?php
2. function getmicrotime(){
3. list($usec, $sec) = explode(" ",microtime());
4. return ((float)$usec + (float)$sec);
5. }
6. $time_start = getmicrotime();
7. for ($i=0; $i < 1000; $i++){
8. //ne rien faire, pendant un millier de fois...
9. }
10. $time_end = getmicrotime();
11. $time = round($time_end - $time_start, 3);
12. echo "<font face='Verdana, Arial, Helvetica, sans-serif' size='1' color='#FFFFFF'> Page générée en $time secondes</font>";
13. ?>
( https://forum.hardware.fr/hfr/Programmation/php-getmicrotime-sujet_15228_1.htm )
pourquoi tu lance pas une fonction qui calcul le tps d'affichage puis une fois calculé tu lance le sleep ?
function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
$debut = getmicrotime();
la s'affiche la page..
$fin = getmicrotime();
echo round($fin-$debut, 3)."sec";
if ($fin!=null)
{
sleep(2);
}
ou bien en javascript :)
function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
$debut = getmicrotime();
la s'affiche la page..
$fin = getmicrotime();
echo round($fin-$debut, 3)."sec";
if ($fin!=null)
{
sleep(2);
}
ou bien en javascript :)