Boucle while php

[Résolu/Fermé]
Signaler
Messages postés
2305
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
11 février 2019
-
Messages postés
2305
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
11 février 2019
-
Bonjour,

Bon pour commencer j'ai très peut de connaissance en php.

Donc je vous explique mon problème avec cette fameuse boucle while:

J'ai un scritp php (index.php) pour un système de dédicasse. Dans ce scrip il y a une boucle while qui va chercher des infos sur ma BDD, et j'aimerai afficher le résultat sur ma page index.html.

voici le code de l'index.php:


<?php
include('config.php');
/*on selectionne les derniere 10derniere dedicase envoyer dans la bd e ton les li*/
$retour_dedi = mysql_query('SELECT * FROM dedicasse ORDER BY id DESC limit 0,10')or die(mysql_error("Impossible de selectionner les données dans la tables <b>'dedicasse'</b> "));

/* on verifie si une dedicasse existe */
$donnes_dedi_compte = mysql_num_rows($retour_dedi);
if($donnes_dedi_compte > 0){ /* si une dedicasse existe alors on continue le script */

/*petite boucle while pour afficher les 10 derniere dedi*/
while($donnes_dedi = mysql_fetch_array($retour_dedi)){

/*variables pour els dedicasse+secu */
$pseudo_dedicasse = htmlspecialchars($donnes_dedi['pseudo']);
$message_dedicasse = htmlspecialchars($donnes_dedi['message']);
$date_dedicasse = $donnes_dedi['date'];
?>
Par <b><u><?php echo $pseudo_dedicasse; ?></b></u> <i><?php echo $date_dedicasse; ?></i> - <b><u>Message:</u></b> <?php echo $message_dedicasse; ?> <b>.::.</b>  
<?php
}
}else{ /*aucune dedicasse existe on affiche un petit message :) */
?>
Il y a actuellement aucune dedicasse disponnible!
<?php
}
?>



Dans mon config.php, j'ai les infos de connexion à ma BDD. Je me suis servi de ce tuto pour mettre en place tout cela:
https://britania.ws/index.html


Merci d'avance a ceux qui pourront m'aider, je ne pense pas que ce soit compliqué.

2 réponses

Messages postés
1669
Date d'inscription
vendredi 11 mai 2007
Statut
Contributeur
Dernière intervention
21 mai 2012
181
Bonjour,

Et donc quel est ton problème ??
A brut pour point, je vois principalement une erreur : /*petite boucle while pour afficher les 10 derniere dedi*/

mais aucun compteur n existe pour savoir quand il arrive au 10 ème résultat à afficher...

Après, je ne sait pas si il va bien te chercher les données dans ta bd, mais on vérifiera après ;)

voici le code que je mettrais :

<?php 
include('config.php'); 
/*on selectionne les derniere 10derniere dedicase envoyer dans la bd e ton les li*/ 
$retour_dedi = mysql_query('SELECT * FROM dedicasse ORDER BY id DESC limit 0,10')or die(mysql_error("Impossible de selectionner les données dans la tables <b>'dedicasse'</b> ")); 

/* on verifie si une dedicasse existe */ 
$donnes_dedi_compte = mysql_num_rows($retour_dedi); 
if($donnes_dedi_compte > 0){ /* si une dedicasse existe alors on continue le script */ 

/*petite boucle while pour afficher les 10 derniere dedi*/ 
$Html=""; 
$Compteur=1;
while($donnes_dedi = mysql_fetch_array($retour_dedi) && $Compteur <=10){ 

/*variables pour els dedicasse+secu */ 
$pseudo_dedicasse = htmlspecialchars($donnes_dedi['pseudo']); 
$message_dedicasse = htmlspecialchars($donnes_dedi['message']); 
$date_dedicasse = $donnes_dedi['date']; 

$Html.="Par <b><u><".$pseudo_dedicasse."</b></u> <i>".$date_dedicasse."</i> - <b><u>Message:</u></b>".$message_dedicasse."<b>.::.</b>";
$Compteur=$Compteur+1;
} 
}else{ /*aucune dedicasse existe on affiche un petit message :) */ 

$Html.="Il y a actuellement aucune dedicasse disponnible!"; 
} 
echo $Html; 
?> 
Messages postés
2305
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
11 février 2019
291
Bonjour, désolé du retard.

Donc le problèmes est résolu, il suffisait de mettre ma page en php hors elle était en html. j'ai fait un rafraîchissement dans une iframe pour que ça s'actualise régulièrement. Pas besoins de compte a rebours vu qu'il affiche en boucle.


Merci tout de même de ton aide, bonne journée.