Ma boucle m'affiche une page blanche

Résolu/Fermé
sinifer Messages postés 312 Date d'inscription mardi 12 février 2008 Statut Membre Dernière intervention 12 mars 2013 - 24 juin 2009 à 09:55
sinifer Messages postés 312 Date d'inscription mardi 12 février 2008 Statut Membre Dernière intervention 12 mars 2013 - 29 juin 2009 à 08:45
Bonjour,
j'ai un problème avec ma boucle, voilà j'arrive pas à afficher mes données qui doivent sortir de ma boucle while.

je fait une requette qui me sort tous les seances mais il y a 8 seance qui ce trouve sur une ligne de ma table et comme je veu pas écrire 8 fois la même ligne je fais une boucle while.
mais celle là m'affiche une page blanche?

si quelqu'un aurait la gentillesse de me montré mon erreur ce serait gentil

<?php

echo 'bonjours';

$query_se = "SELECT se_id, customers_id, se_envoi_1, se_envoi_2, 
					se_envoi_3, se_envoi_4, se_envoi_5, se_envoi_6, 
					se_envoi_7, se_envoi_8 FROM se
					FROM se 
					WHERE se_status LIKE '1%' 
					AND customers_id = '1' ";
			$result_se = mysql_query($query_se);
			
		// echo("<tr><td with=\"20px\"></td><td width=\"100px\"><b>".$id_commande."</b></td><td width=\"120px\"><b>".$date_commande."</b></td></tr>"); 
			while ($row_se = mysql_fetch_assoc($result_se)) {
				$i = 1;
				while ($i <= 8) {
				 				 
echo ($row_se['customers_id']; ?><tr>
<a href=''
 onclick = "window.open('popup_se.php?rel_id=<?php echo $row_se['se_id']; ?> &cu_id=<?php echo $row_se['customers_id']; ?> &re_envoi=<?php echo $row_se['se_envoi_".i."']; ?> &key=<?php echo $i; ?>', 'popup','width=640,height=280'); return false ;"><?php echo $type_commande."_"".i."; echo ' le : ';  echo $row_se['se_envoi_".i."']; ?></a><br>
 "</b></tr><?php );
 
    echo $i++;  
}
 } 
 ?>
A voir également:

10 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
24 juin 2009 à 10:46
tu as deux fois FROM se

et il te faut des <td>

essayes comme ça:

<?php

echo 'bonjour';

$query_se = "SELECT se_id, customers_id, se_envoi_1, se_envoi_2, 
					se_envoi_3, se_envoi_4, se_envoi_5, se_envoi_6, 
					se_envoi_7, se_envoi_8 FROM se
					WHERE se_status LIKE '1%' 
					AND customers_id = '1' ";
			$result_se = mysql_query($query_se) or die ("Pb avec la requette: ".mysql_error());
			
		// echo("<tr><td with=\"20px\"></td><td width=\"100px\"><b>".$id_commande."</b></td><td width=\"120px\"><b>".$date_commande."</b></td></tr>"); 
			$i=1;
			while ($row_se = mysql_fetch_assoc($result_se)) {
				//pas besoin de mettre une boucle while la première te sortira les resultats tant qu'il y en a 
				//heureusement car comment peut tu savoir combien a chaque fois ça peut changer si tu en rajoutes il faudrait modifier le code ?
				 				 
echo "$row_se['customers_id']; <tr><td><a href=''
 onclick = \"window.open('popup_se.php?rel_id=$row_se['se_id']&cu_id=$row_se['customers_id']&re_envoi=$row_se['se_envoi_".$i."']&key=$i','popup','width=640,height=280') return false \" > $type_commande."_"".$i."' le :  $row_se['se_envoi_".$i."']</a></b></td></tr>";
 
     $i++;  

 } 
 ?>
0
sinifer Messages postés 312 Date d'inscription mardi 12 février 2008 Statut Membre Dernière intervention 12 mars 2013 11
24 juin 2009 à 11:11
ben le problème c'est que ma table est comme sa:

se_id 	customers_id 	se_envoi_1 	se_envoi_2 	se_envoi_3 	se_envoi_4 	se_envoi_5 	se_envoi_6 	se_envoi_7 	se_envoi_8


et moi je veut que pour chaque commande je veu que sa sorte comme sa:

customers_id
date + se_envoi_1
date + se_envoi_2
date + se_envoi_3
...
date + se_envoi_8

et comme je veu pas fair 8 fois:

echo "$row_se['customers_id']; <tr><td><a href=''
 onclick = \"window.open('popup_se.php?rel_id=$row_se['se_id']&cu_id=$row_se['customers_id']&re_envoi=$row_se['se_envoi_1']&key=$i','popup','width=640,height=280') return false \" > $type_commande."_1"' le :  $row_se['se_envoi_1']</a></b></td></tr>";

c'est pour sa que je fais une boucle qui va lui mettre à i +1 a chaque fois
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
24 juin 2009 à 11:47
déja les variables en php c'est $i et pas i

ensuite pour l'incrementer ne mets pas echo $i++; mais $i++;


<?php

echo 'bonjour';
echo '<table>';
$query_se = "SELECT se_id, customers_id, se_envoi_1, se_envoi_2, 
					se_envoi_3, se_envoi_4, se_envoi_5, se_envoi_6, 
					se_envoi_7, se_envoi_8 FROM se
					WHERE se_status LIKE '1%' 
					AND customers_id = '1' ";
			$result_se = mysql_query($query_se) or die ("Pb avec la requette: ".mysql_error());
			
		// echo("<tr><td with=\"20px\"></td><td width=\"100px\"><b>".$id_commande."</b></td><td width=\"120px\"><b>".$date_commande."</b></td></tr>"); 
		
			while ($row_se = mysql_fetch_assoc($result_se)) {
				 	for($i=1;$i<=8;$i++){			 
echo "$row_se['customers_id']; <tr><td><a href=''
 onclick = \"window.open('popup_se.php?rel_id=$row_se['se_id']&cu_id=$row_se['customers_id']&re_envoi=$row_se['se_envoi_".$i."']&key=$i','popup','width=640,height=280') return false \" > $type_commande."_"".$i."' le :  $row_se['se_envoi_".$i."']</a></b></td></tr>";
	}
     

 }
echo '</table>'; 
 ?>
0
sinifer Messages postés 312 Date d'inscription mardi 12 février 2008 Statut Membre Dernière intervention 12 mars 2013 11
24 juin 2009 à 12:09
ce qui est bizard c'est quand je mets
echo $row_se['se_envoi_3'];
sa marche mais si je mets
echo $row_se['se_envoi_".i."'];
sa marche pas
je fais pourtant
$i=3;
et mon echo sort le 3 ???
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
24 juin 2009 à 13:17
il faut mettre $i et pas i

echo $row_se['se_envoi_".$i."']; 


en php les variables doivent tjs commencer par $
0
sinifer Messages postés 312 Date d'inscription mardi 12 février 2008 Statut Membre Dernière intervention 12 mars 2013 11
24 juin 2009 à 13:53
excuse moi j'avait fais ".$i."
et sa marche pas c'est que j'ai réecrit c'est pour sa que j'ai oublié le $
0
sinifer Messages postés 312 Date d'inscription mardi 12 février 2008 Statut Membre Dernière intervention 12 mars 2013 11
24 juin 2009 à 14:32
une petite question j'ai fait comme sa:

$se_envoi_1 = $row_se[2];

donc dans mon echo si je fait:
echo $se_envoi_.$i; sa me mets juste la valeur

si je fait echo $se_envoi_".$i.";
sa me fait rien mais j'aimerai lire la valeur de
echo $se_envoi_1;

commen je fait???
0
sinifer Messages postés 312 Date d'inscription mardi 12 février 2008 Statut Membre Dernière intervention 12 mars 2013 11
24 juin 2009 à 15:30
mon erreur ce trouve là:
Code :
$row_se['se_envoi_$i']

normalement sa doit être écrit
Code :
$row_se['se_envoi_1']

mais comme c'est une boucle je veu qu'après ce soit
Code :
$row_se['se_envoi_2']

3 4 etc...
le problème c'est que .$i. ou ".$i." ne marche pas
si tu sait comment faire ce serai gentille de me l'expliquer merci
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
28 juin 2009 à 22:35
pour une variable dynamique il faut faire:

${"se_envoi_".$i}
0
sinifer Messages postés 312 Date d'inscription mardi 12 février 2008 Statut Membre Dernière intervention 12 mars 2013 11
29 juin 2009 à 08:45
Merci mais sa a marché comme sa

$row_se["re_se_envoi_$i"];
0