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

  FORUM HardWare.fr
  Programmation
  PHP

  problème avec mysql_fetch_assoc() !!

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problème avec mysql_fetch_assoc() !!

n°1014830
_gargamel_
Posté le 16-03-2005 à 16:20:03  profilanswer
 

Salut à tous, je suis en train de réaliser un page en php visant à afficher de manière structurée un tableau mysql, et je doit accéder plusieurs fois à cette boucle:
 
  " while(  (  $data = mysql_fetch_assoc($req)  )  )  "
 { ....  }
 
La première fois, il entre dans la boucle correctement, et ensuite, j'ai l'impression que le programme considère que la condition n'est pas valide et ne rendre donc plus dans la boucle.
 
Voila mon programme complet:
 
<?php
//on se connect a mysql
$db = mysql_connect("localhost","root","asefthukom" );
//on selectionne la base
mysql_select_db("projet_php", $db);
//on crée la requete sql
$sql = "SELECT id_formation,nom,formation FROM formation";  
//on evoie la requete
$req= mysql_query( $sql) or die('ma requête'.$sql.'est defectueuse'.mysql_error());
$x = 3;     //correspond aux formations bac + 3, puis 4 , puis 5
echo '<ul>';
while (  $x <= 5 )
 {
 echo '<li><h4>     Formations bac + '.$x.'</h4></li>';
 echo '<ol>';        
 while(  (  $data = mysql_fetch_assoc($req)  )  )    
  {
  if( $data['formation'] == $x )
   {
   echo '<li>
   <a href="details_une_formation.php?id_formation='.$data['id_formation'].'">'.$data['nom'].'</a>
   </li>';
   }
  }
 echo '</ol>';
 $x = $x + 1;
 }
echo '</ul>';
//on ferme la connexion à mysql
mysql_close();
?>
 
 
et voila ce qu'il m'affiche:
 
 
 
. formation bac + 3
      1.license ville d'avray
. formation bac + 4
. formation bac + 5
 
pour bac+3 cela fonctionne, mais pour 4 et 5 il ne m'écrit rien
 
Si vous pouviez me donner un coup de mains, SVP
Merci
 

mood
Publicité
Posté le 16-03-2005 à 16:20:03  profilanswer
 

n°1014838
Profil sup​primé
Posté le 16-03-2005 à 16:23:32  answer
 

faut mettre ta requete dans la boucle, apres le while <= 5 truc

n°1014842
skeye
Posté le 16-03-2005 à 16:25:02  profilanswer
 

ton algo est mauvais.
Au premier tour de boucle de ton while($x <= 5) tu lis tous les résultats de ta requête, et tu ne reviens pas au début pour les tours suivants...
Tu peux revoir ton algo, ou utiliser
http://www.nexen.net/docs/php/anno [...] ien=mysql_


---------------
Can't buy what I want because it's free -
n°1014845
skeye
Posté le 16-03-2005 à 16:25:41  profilanswer
 


 
T'as raison, comme ça il exécute plusieurs foisla même requête pour rien![:w3c compliant]


---------------
Can't buy what I want because it's free -
n°1014849
Profil sup​primé
Posté le 16-03-2005 à 16:26:57  answer
 

c'est pour simplifier :o

n°1014850
skeye
Posté le 16-03-2005 à 16:28:38  profilanswer
 


Super![:mlc]
mysql_data_seek est pas optimal non plus, mais aussi simple que de déplacer la requête et nettement plus judicieux, quand même...:o


---------------
Can't buy what I want because it's free -
n°1014851
Profil sup​primé
Posté le 16-03-2005 à 16:31:13  answer
 

la flemme stout [:benou]

n°1014854
skeye
Posté le 16-03-2005 à 16:31:50  profilanswer
 


Dans ce cas abstiens-toi de répondre! [:dawa]


---------------
Can't buy what I want because it's free -
n°1014855
Profil sup​primé
Posté le 16-03-2005 à 16:32:02  answer
 

ca marche [:dawa]

n°1014871
_gargamel_
Posté le 16-03-2005 à 16:53:25  profilanswer
 

Merci, je vais tenter d'utiliser mysql_data_seek().

mood
Publicité
Posté le 16-03-2005 à 16:53:25  profilanswer
 

n°1014873
skeye
Posté le 16-03-2005 à 16:56:01  profilanswer
 

_gargamel_ a écrit :

Merci, je vais tenter d'utiliser mysql_data_seek().


C'est la solution la plus simple.
Après tu as moyen de faire plus optimal (ie parcourir une seule fois les résultats de ta requête) en triant tes données dans la requête...


---------------
Can't buy what I want because it's free -
n°1014880
_gargamel_
Posté le 16-03-2005 à 17:02:57  profilanswer
 

C'est bon, le problème est réglé, sa marche impecable


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

  problème avec mysql_fetch_assoc() !!

 

Sujets relatifs
[résolu][applet] probleme d'affichage[PHP + bd mysql] Supprimer le champ de ma table
probleme de decalage d'un sous menu en javascript avec IE[c#] Probleme avec le designer de visual studio
Quel est l'equivalent d'un Update via 2 tables sous MySQL?Insertion d'une table vers une autre pour enleve les doublons (MySQL)?
probleme insertion base de donnéesLe contraire d'un LIKE sous MySQL?
problème lors de l'éxecution de la releaseprobleme d ecriture dans un fichier
Plus de sujets relatifs à : problème avec mysql_fetch_assoc() !!


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