Vous n'êtes pas identifié(e).
Bonjour,
je débute en php et, malgré mes recherches, je n'ai toujours pas trouvé de solution à ce problème :
Comment faire une pause dans l'exécution d'une boucle en php.
Description du problème :
dans un script en php, je charge les données d'une table d'e ma bd myqsl et j'aimerais que les infos extraites s'affichent les unes après les autres MAIS avec une pause de 5 secondes entre chacune d'elles.
J'ai essayé sleep(5) mais toutes les pauses se cumulent, bloquent l'exécution du script en entier, et l'affichage de toutes les données se fait en une seule fois en fin de pauses globalisées.
mon script :
$connexion=mysql_connect("mon_serveur","mon_login","mon_password")or die ("PROBLEME DE CONNEXION AU SERVEUR");
$db=mysql_select_db("ma_base") or die ("PROBLEME A L'OUVERTURE DE LA BASE DE DONNEE");
$req="SELECT * FROM $ma_table";
$res=mysql_query($req)or die ("Erreur à l'ouverture de la table ".mysql_error());
$fiches=mysql_num_rows($res);
for ($i=1; $i<=$fiches; $i++)
{
extract(mysql_fetch_array($res));
/*
la table se compose de 2 champs : 'nom' et 'image' reprenant respectivement
le titre donné à une photo et son nom de fichier. Ex: 'Sous-bois' 'photo001.jpg'
le titre de la photo s'affiche et en-dessous l'image
*/
echo $nom."<br>"."img src='http://mon_monsite/images/".$image."' border='0'><br><hr>";
/* c'est ici que je voudrais faire une pose de 5 seconde avant l'affichage
du nom et de la photo suivante et ainsi de suite */
/* j'ai donc essayé : */
sleep(5);
/* mais il bloque l'exécution de tout l'affichage durant 5 secondes x nbre de
fiches de la base avant d'afficher le tout en une fois */
}
?>
Dernière modification par pepeche (11-05-2009 19:41:28)
Hors ligne
salut,
ce que tu cherche a faire se fait en javascript, php se déroule coté serveur et ne sais pas ce qui se passe coté client (le navigateur). Alors que JS c'est le contraire (pour simplifier). donc pour un effet de "slide" il te faut utiliser javascript.
les explication sont données la => http://www.phpdebutant.org/article118.php
@+
Il en faut peu pour être heureux pompompompompompompompompompompom
Hors ligne
Avec la mode des sites "fashion", on se retrouve avec une invasion du JS
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
Et pourtant le sous-forum Javascript, ici : http://forum.phpdebutant.org/viewforum.php?id=82, reste vierge.
Va comprendre ?
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Le problème vient du fait que le débutant n'arrive pas à concevoir la différence entre l'exécution client et l'exécution server...
Pour lui quand il fait "rafraichir" la page c'est lui qui provoque l'exécution du script et donc c'est chez lui que ça marche (je pense que c'est ça le souci)
Il ne se rends pas compte qu'en fait le navigateur envoi la requête au serveur et que du coup c'est bel et bien le serveur qui fait le boulot...
A ça tu rajoute le fait que le débutant s'est installé un WAMP¨sur sa machine et que sa machine est en fait le serveur dans ce cas précis... Et il est complètement paumé
La programmation est composée de 80% de réflexion pour 20% de syntaxe -> réfléchissez à votre problème par étapes
Recommande l'utilisation du pattern Singleton
Si jamais je poste un morceau de code pour vous aider, prenez bien compte que je n'ai pas forcément testé le code que je poste et qu'il est possible qu'il contienne des erreurs
Hors ligne
Et AJAX ne vient pas arranger les choses en mélangeant ces concepts dans des têtes déjà un peu débordées.
Je viens, sur un autre forum, de recadrer gentiment quelqu'un qui ne faisait pas bien la différence entre une table et une base de données.
Faire comprendre qu'on se connecte à un serveur de base de données, qu'on sélectionne une base de données à l'intérieur de laquelle sont stockées les tables sur lesquelles on exécute des requêtes, est un cheminement qui ne va pas de soi.
Quand en plus il faut expliquer que PMA (PhpMyAdmin) est un client PHP de MySQL on frôle l'incident.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Courage MK... tu as déjà réussi à ce que mes codes soient moins Gruik Gruik, comme quoi il y a de l'espoir
Et là, pourquoi pas faire migrer le topic dans JS ???
Dernière modification par Alnoss (12-05-2009 16:43:20)
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
Et là, pourquoi pas faire migrer le topic dans JS ???
Parce que nous n'avons pas d'outil d'administration qui le permettrait.
Tu sais, on l'aura, dès que Manicow aura le temps.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Bonsoir MK,
Parce que nous n'avons pas d'outil d'administration qui le permettrait.
Hmmm, cherches bien...
Alain.
Promotion de PPOO : Programmation Propre Orientée Objet !!
Recommande AAO : Apéritif Avec Olives...
Glop, glop
Hors ligne
Alnoss a écrit :Et là, pourquoi pas faire migrer le topic dans JS ???
Parce que nous n'avons pas d'outil d'administration qui le permettrait.
Tu sais, on l'aura, dès que Manicow aura le temps.
Ben alors... je le reposte dans le topic JS :-)
Hors ligne
Le problème vient du fait que le débutant n'arrive pas à concevoir la différence entre l'exécution client et l'exécution server...
Pour lui quand il fait "rafraichir" la page c'est lui qui provoque l'exécution du script et donc c'est chez lui que ça marche (je pense que c'est ça le souci)
Il ne se rends pas compte qu'en fait le navigateur envoi la requête au serveur et que du coup c'est bel et bien le serveur qui fait le boulot...A ça tu rajoute le fait que le débutant s'est installé un WAMP¨sur sa machine et que sa machine est en fait le serveur dans ce cas précis... Et il est complètement paumé
J'avoue que c'est vrai... mais je me soigne ;-)
Hors ligne
Bonsoir MK,
Maljuna Kris a écrit :Parce que nous n'avons pas d'outil d'administration qui le permettrait.
Hmmm, cherches bien...
Alain.
Ben, j'ai eu beau faire le tour de ce forum, je n'ai pas trouvé, avec un profil modérateur, comment transférer un message d'un forum vers un autre.
les options disponibles dans le menu Administration sont :
# Utilisateurs
# Mots censurés
# Bannissements
# Signalements
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Avant d'aller dodo...
Quand tu consulte le message, en bas à gauche : " Déplacer la discussion"
tu dois avoir comme moi
Aller bonne nuit tous.
Promotion de PPOO : Programmation Propre Orientée Objet !!
Recommande AAO : Apéritif Avec Olives...
Glop, glop
Hors ligne
Mais alors presque tout en bas, et complètement tout à gauche.
Ben voui, j'avais pas vu.
IL n'y a pas de pire aveugle que celui qui ne veut pas voir, dit-on.
Désolé.
Je vais tester de suite.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Si vous avez besoin d'un coup de main dans l'équipe de modération, je suis volontaire
[MK pourra attester de mon sérieux ]
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
Si vous avez besoin d'un coup de main dans l'équipe de modération, je suis volontaire
[MK pourra attester de mon sérieux ]
<mode bachelot>Ah bon ?</mode>
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
[mode vengeance]OH ! y'a une partie Défouloir ^^[/mode]
[mode sérieux]Bah, c'est juste que je vois que je peux être utile[/mode]
Dernière modification par Alnoss (13-05-2009 10:06:13)
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
[mode sérieux]Bah, c'est juste que je vois que je peux être utile[/mode]
<re-mode Bachelot>re-Ah Bon ?</mode>
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
<re-mode Bachelot>re-Ah Bon ?</mode>
[re-mode serieux]Oui MÔnsieur !!! J'en suis capable, et prêt à faire mes preuves !![/mode]
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
Envoies un courriel à Manicow car je ne sais pas comment s'organise c't'affaire de nos jours.
Ceci dit ce n'est pas l'Académie Française non plus, remarques, tu prendrais le siège de Raf...va falloir assurer
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne