Problème affichage BD multiples

ekipage2 Messages postés 18 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 12 décembre 2004 - 12 déc. 2004 à 15:56
HecToR_coCHON Messages postés 34 Date d'inscription lundi 15 novembre 2004 Statut Membre Dernière intervention 27 octobre 2005 - 12 déc. 2004 à 16:49
Bonjour,

j'ai plusieurs BD : eleve / matières / et exercices
Lorque l'élèv se connecte, il peut afficher la liste des exercices correspondants à sa classe (enfin... en théorie, puisque je n'arrive à faire l'affichage (:

Si je me limite à la liste des exos / à sa classe = ca marche et toutes les matières s'affichent (by order) avec les exercices pour chacune d'entres elles.
MAis je voudrais que l'élève puisse choisir en fonction de chaque matière

Le code, si par exemple l'élève veut consulter les exos en Français et relatifs à sa classe :

$req="SELECT idmatiere, matiere FROM table_matiere WHERE matiere='Français'";
$sql=mysql_query($req);
while ($result=mysql_fetch_array($sql))
{$mat=$result['idmatiere'];
$reqex="select * from _table_exercises where idmatiere='$mat' and classe like '%$classe%' order by name";
$sqlex=mysql_query($reqex);
if (mysql_num_rows($sqlex)!=0)
{echo '<table align="center"><tr><td align="center">'.$result['matiere'].'</td></tr>';

ca coince keke part .... et j'arrive pas à voir ou (:

Si je fait le code suivant, ca amrche
$req="select idmatiere, matiere from table_matiere order by matiere";
$sql=mysql_query($req);
while ($result=mysql_fetch_array($sql))
{$mat=$result['idmatiere'];
$reqex="select * from _table_exercises where idmatiere='$mat' and classe like '%$classe%' order by name";
$sqlex=mysql_query($reqex);
if (mysql_num_rows($sqlex)!=0)
{echo '<table align="center"><tr><td align="center">'.$result['matiere'].'</td></tr>';
echo '<tr><td>';

Merci d'vance pour votre aide !

1 réponse

HecToR_coCHON Messages postés 34 Date d'inscription lundi 15 novembre 2004 Statut Membre Dernière intervention 27 octobre 2005
12 déc. 2004 à 16:49
1 ) Les 'select * from ..' c'est pas génial. Limite plutot tes sélection à l'élement que tu cherche ( ici tu ferais "select matiere from ..." )

2 ) Ensuite il me semble qu'il faut que tu fasse un $result = mysql_fetch_array($sqlex) avant d'utiliser $result['matière'] ;

En fait je comprend pas trop ton code ... a quoi sert le "select * from _table_exercises where idmatiere='$mat' and classe like '%$classe%' order by name" ? Après t'en fait rien ... tu ne fait qu'utiliser le ="select idmatiere, matiere from table_matiere order by matiere" ?

Explique s'il te plait
0
Rejoignez-nous