Boucle WHILE qui bug mais pourquoi ?

BFH
Eléphant du PHP | 214 Messages

17 mars 2006, 14:52

Bonjour, j'ai un petit probleme avec un boucle while...
$Requete_Client="SELECT * FROM client, projet, participeprojet
					WHERE client.ID_Client = projet.ID_Client
					AND projet.ID_Projet = participeprojet.ID_Projet
					AND participeprojet.ID_Etud='".$Etudiant['ID_Etud']."';";
	
	$ExecutionR_Client=mysql_query($Requete_Client) or die (mysql_error());

	while($Client=mysql_fetch_assoc($ExecutionR_Client) or die(mysql_error()))
				{echo"blablabla".$Client['ID_Client']."bla";}
La boucle s'execute donc tant que j'ai des clients j'ai le truc correct qui s'ecrit mais la boucle semble ne pas se finir .... :?

Si qq sait pourquoi, merci d'avance!
Perdu dans la matrice avec un guide michelin ](*,) #-o
Adorateur de Cyrano
Parti puis revenu...

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 mars 2006, 15:22

Quelques tites erreurs :
$Requete_Client="SELECT * FROM client, projet, participeprojet 
	WHERE client.ID_Client = projet.ID_Client 
	AND projet.ID_Projet = participeprojet.ID_Projet 
	AND participeprojet.ID_Etud='".$Etudiant['ID_Etud']."'"; 
     
$ExecutionR_Client=mysql_query($Requete_Client) or die (mysql_error()); 

while($Client=mysql_fetch_assoc($ExecutionR_Client) or die(mysql_error())) 
{
	echo "blablabla".$Client['ID_Client']."bla";
}
Ensuite si tu lances ta requête dans phpMyAdmin, le résultat est correct ?

BFH
Eléphant du PHP | 214 Messages

17 mars 2006, 15:38

while($Client=mysql_fetch_assoc($ExecutionR_Client) or die(mysql_error())) 
{
	echo "blablabla".$Client['ID_Client']."bla";
}
Dsl, mais je ne vois pas la difference entre ce que j'ai ecris et ce que tu as ecris.... :-s

Peut etre ne suis pas assez precis alors voila si je mets :
echo"
<TABLE>
<TR>
<TD>&nbsp;</TD>
<TD class='titre-rubrique'>Membres présents :</TD>
<TD class='contenu-rubrique'>";
while($Membre=mysql_fetch_assoc($ExecutionR_Membre) or die(mysql_error()))
{echo $Membre['PrenomEtud']." ".$Membre['NomEtud']."<BR>	";}
										
echo"</TD>
</TR>
</TABLE>";
Le code source de la page HTML sera :
<TABLE>
<TR>
<TD>&nbsp;</TD>
<TD class='titre-rubrique'>Membres présents :</TD>
<TD class='contenu-rubrique'>Gerard DUBOIS<BR>François DEMAY<BR>etc...<BR>
donc il manquera tout ce qui est derriere la fin de boucle ! :?
Perdu dans la matrice avec un guide michelin ](*,) #-o
Adorateur de Cyrano
Parti puis revenu...

Avatar du membre
ViPHP
ViPHP | 3008 Messages

17 mars 2006, 15:42

$Requete_Client="SELECT * FROM client, projet, participeprojet 
    WHERE client.ID_Client = projet.ID_Client 
    AND projet.ID_Projet = participeprojet.ID_Projet 
    AND participeprojet.ID_Etud='".$Etudiant['ID_Etud']."'"; 
      
$ExecutionR_Client=mysql_query($Requete_Client) or die (mysql_error()); 

while($Client=mysql_fetch_assoc($ExecutionR_Client) or die(mysql_error())) 
{ 
    echo "blablabla".$Client['ID_Client']."bla"; 
}
Il y avait un ";" en trop dans la requête, et pour le echo j'ai juste fait un espace entre le echo et le ".

As-tu essayé de lancer ta requête à partir de phpMyAdmin comme je te l'ai dit pour voir si le résultat est correct ? Si ça bug à cet endroit c'est qu'il s'agit de la requête.

BFH
Eléphant du PHP | 214 Messages

17 mars 2006, 15:49

DSl mais enlever le ; dans la requete ne change rien.
Mettre un espace entre le echo et le reste ne change rien.

Je test toutes mes requetes avec wamp.

Merci d'avoir chercher a resoudre mon probleme :)

[edit] c'est la requete qui tuait tout le "or die" plantait tout dans le while, bravo.
Perdu dans la matrice avec un guide michelin ](*,) #-o
Adorateur de Cyrano
Parti puis revenu...