Page 1 sur 1

affichage du resultat d'une requete sql

Posté : 08 mars 2006, 14:28
par blackbird
bonjour tt le m
regarder ce code :
<?
include("conn.php");
$result=mysql_query("select * from enseignant group by specialite");
while($row1=mysql_fetch_array($result)) {
echo "<table border= 1  width =100%>
						
<tr bgcolor=#0099FF>
<td width=20><fontcolor=#FFFFFF><b><i>Spécialité</b></i></font></td>
											 <td width=35%><font color=#FFFFFF><b><i>".$row1["specialite"]. "</font></td>
											</tr>
											<tr bgcolor=#CCDFF9>
                                             <td width=20%><font color=#000000>Nom & Prénom</font></td>
											 <td width=35%><font color=#000000>".$row1["nom"]. " ".$row1["prenom"]."</font></td>
											</tr></table>
											<p>&nbsp</p>";}
mysql_close();
?>
je veux afficher le résultat de la requete dans des tableaux groupés par la
spécialité de chaque enseigant.
le problème que le résultat s'affiche, mais uniquement le 1er enrgistrement.

exemple : si j'ai dans ma base de données :

Code : Tout sélectionner

x français y informatique z informatique w farnçais m physique
le résultat que je veux :

Code : Tout sélectionner

informatique : y z français : x w physique : m
mais lui il affiche :

Code : Tout sélectionner

informatique : y français : x physique : m
il n'affiche pas les autres enregistrements.
comment faire ?

merci d'avance...

Posté : 08 mars 2006, 14:34
par heddicmi
c'est pas beau de poster en double... [-X

Posté : 08 mars 2006, 15:07
par zeus
modération : blackbird, afin de clarifier et d'augmenter la lisibilité de tes messages, je te demanderais d'encadrer tes messages avec les balises
 et [code]. Je l'ai fait pour toi dans ton message mais merci d'y penser à l'avenir ;)

De plus, le multipostage est interdit sur PHPFrance. Ce message étant dans le bon forum, j'ai supprimé le second message.

Afin de te familiariser avec les réglements du forum, je t'encourage à lire cet article :
http://www.phpfrance.com/forums/voir_sujet-46.php

Merci de ta compréhension :)[/color]

Posté : 09 mars 2006, 16:16
par blackbird
ok modérateur, mais qqun c la réponse à ma question

Posté : 09 mars 2006, 23:23
par ouckileou
change déjà ta requête SQL, un SELECT * + GROUP BY ne correspond à rien

il te faut récolter toutes les infos et utiliser ORDER BY pour les trier dans l'ordre alphabétique des matières

Il te suffira de faire un petit test à chaque traitement d'une nouvelle ligne de ton résultat pour voir si tu changes de matières et donc si tu dois afficher un titre