Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1343 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Boucle while

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Boucle while

n°1035760
skynicko
Posté le 05-04-2005 à 14:24:06  profilanswer
 

Bonjour
 
J'aimerai afficher d'abord l'ensemble des questions de ma FAQ avec des liens ancrés qui pointent vers les réponses qui se trouvent plus bas dans la page.
Ex :
Questions
Pourquoi vous aimez le fromage ?
Combien y a t'il de jour dans l'année ?
 
Réponses
Parce que c'est fondant
Il y a 365 jours dans l'année
 
Voici mon code, j'utilise pear. Si quelqu'un pouvait m'aider à mettre ça dans le bonne ordre. J'ai fait des essais pendant toute la matinée mais je n'arrive à afficher que les questions suivies des réponses.
 

Code :
  1. <?
  2. // FAQ
  3. $req = $db->query("SELECT faq_num, faq_question, faq_reponse FROM faq" );
  4. if (!empty ($req))
  5. {
  6. while ($faq = $req->fetchRow(DB_FETCHMODE_ASSOC))
  7.  {
  8.   echo "\t<p><a href=\"#$faq[faq_num]\">
  9.   $faq[faq_question]</a>\n\t<br /><br />\n</p>";
  10.   echo "\t<p class=\"reponse_faq\"><a name=\"$faq[faq_num]\">
  11.   $faq[faq_reponse]</a>\n\t<br /><br />\n</p>";
  12. }
  13. }
  14. else
  15. echo "<p>Il n'y a pas de questions-reponses dans la FAQ</p>";
  16. ?>


Message édité par skynicko le 05-04-2005 à 14:25:34
mood
Publicité
Posté le 05-04-2005 à 14:24:06  profilanswer
 

n°1035781
naceroth
Posté le 05-04-2005 à 14:31:30  profilanswer
 

ben, simple question de logique, si tu veux afficher d'abord toutes les questions puis seulement toutes les réponses, va falloir 2 boucles :)

n°1035824
skynicko
Posté le 05-04-2005 à 14:46:01  profilanswer
 

La logique me fait défaut certe. Mais j'avais testé avec deux boucles mais ça fonctionnait pas. J'ai mis ce code parce que c'est la dessus que je m'étais arreté en attendant.
J'ai un peu de mal avec l'imbrication des boucles.
 
J'ai reussi à faire ça, mais la il ne m'affiche que la 1ere question et la 1ere réponse :
 

Code :
  1. <?
  2. // FAQ
  3. $req = $db->query("SELECT faq_num, faq_question, faq_reponse FROM faq" );
  4. if (!empty ($req))
  5. {
  6. while ($faq = $req->fetchRow(DB_FETCHMODE_ASSOC))
  7.  {
  8.   echo "\t<p><a href=\"#$faq[faq_num]\">
  9.   $faq[faq_question]</a>\n\t<br /><br />\n</p>";
  10. while ($faq = $req->fetchRow(DB_FETCHMODE_ASSOC))
  11.  {
  12.   echo "\t<p class=\"reponse_faq\"><a name=\"$faq[faq_num]\">
  13.   $faq[faq_reponse]</a>\n\t<br /><br />\n</p>";
  14. }
  15. }
  16. }
  17. else
  18. echo "<p>Il n'y a pas de questions-reponses dans la FAQ</p>";
  19. ?>


Message édité par skynicko le 05-04-2005 à 14:48:23
n°1035838
naceroth
Posté le 05-04-2005 à 14:50:47  profilanswer
 

Y a pas à les imbriquer non plus, la première boucle liste les questions et une fois la boucle finie, tu en fais une pour les réponses :)
 

Code :
  1. while (encore des lignes){
  2. affichage question
  3. }
  4. retour au début du dataset
  5. while (encore des lignes){
  6. affichage réponse
  7. }

n°1035840
soju
One shot !
Posté le 05-04-2005 à 14:51:26  profilanswer
 

un moyen très simple :

Code :
  1. <?
  2. // FAQ
  3. $req = $db->query("SELECT faq_num, faq_question, faq_reponse FROM faq" );
  4. if (!empty ($req))
  5. {
  6. $temp = '';
  7. while ($faq = $req->fetchRow(DB_FETCHMODE_ASSOC))
  8. {
  9.  echo "\t<p><a href=\"#$faq[faq_num]\">
  10.  $faq[faq_question]</a>\n\t<br /><br />\n</p>";
  11.  $temp. = "\t<p class=\"reponse_faq\"><a name=\"$faq[faq_num]\">
  12.  $faq[faq_reponse]</a>\n\t<br /><br />\n</p>";
  13. }
  14. echo $temp;
  15. }


 
PS: si la logique te fait défaut je te souhaite bon courage dans la prog  ;)

n°1035849
skynicko
Posté le 05-04-2005 à 14:55:20  profilanswer
 

Merci j'en ferai pas mon métier plus tard. La j'ai pas le choix donc j'essaye de faire au mieux. Mais c'est vrai que j'ai du mal à coder ce que je pense et même parfois à comprendre ce que je code lol


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Boucle while

 

Sujets relatifs
Modification a l'interieur d'une boucle While vers mysqlJe trouve pas à propos d'une boucle while ...[Abandon]
[PHP] Problème boucle while et "continue;"Probleme boucle while[Résolu]
[debutant] Boucle for / while et ecriture fichierboucle while et if
boucle while économiqueInteruption d'une boucle / J'apprends à faire un while
[php]sortir du boucle whileboucle while indentifiant variable
Plus de sujets relatifs à : Boucle while


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR