Bonjour je dois créer un emploi du temps pour une université.
J'ai donc créer un formulaire pour rentrer tous les paramètres des cours enseignés.
Je souhaiterais maintenant que mon emploi du temps s'affiche à l'écran sous forme d'un tableau par exemple en respectant les horaires sélectionnées mais j'ai des erreurs qui s'affichent.
La page suivante est le formulaire qui pêrmet la création d'un emploi du temps :
<?
$bdd="université";
$host="localhost";
$user="root";
$pass="";
mysql_connect($host,$user,$pass) or die ("Impossible de se connecter à la base de données");
mysql_select_db($bdd);?>
<p align="center"><font size="6" face="Verdana" color="#235678">CREATION D'UN EMPLOI DU TEMPS :</p></font>
<form action='emploidutemps.php' method='post'>
<p align="center"><font size="3" face="Verdana" color="#697291">Choisissez la durée du cours : </p></font>
<select name="duree" align="center">
<option value='-' >
</option>
<option value="1">1 heure
<option value="2">2 heures
<option value="3">3 heures
<option value="4">4 heures
</select>
<br>
<br>
<p align="center"><font size="3" face="Verdana" color="#697291">Choisissez la spécialité : </p></font>
<select name="specialite" align="center">
<option value='-'></option>
</option>
<option value="calculatrice">calculatrice
<option value="electromecanique">electromecanique
<option value="electronique">electronique
<option value="electronique appliquee">electronique appliquee
<option value="mesures en ingenieurie electrique">mesures en ingenieurie electrique
<option value="systeme intelligent pour la communication">systeme intelligent pour la communication
</select>
<br>
<br>
<p align="center"><font size="3" face="Verdana" color="#697291">Choisissez le groupe : </p></font>
<select name="groupe" align="center">
<option value='-' ></option>
<option value="1">1er groupe
<option value="2">2ème groupe
<option value="3">3ème groupe
<option value="4">4ème groupe
</select>
<br>
<br>
<p align="center"><font size="3" face="Verdana" color="#697291">Choisissez le cours :</p></font>
<select name="matiere" align="center">
<option value='-' ></option>
<?
$requet2="select * from matiere";
if($result2=mysql_query($requet2))
{
while($ligne2=mysql_fetch_array($result2))
{
?><option value="<?echo $ligne2['id_matiere'];?>">
<?echo $ligne2['matiere'];
}
}
?>
</select>
<p align="center"><font size="3" face="Verdana" color="#697291">Choisissez le type du cours : </p></font>
<select name="type" align="center">
<option value='-' >
</option>
<option value="1">cours
<option value="2">TP
<option value="3">TD
<option value="4">Projet
<option value="5">Pas cours
</select>
<p align="center"><font size="3" face="Verdana" color="#697291">Choisissez la salle du cours :</p></font>
<select name="salle" align="center">
<option value='-' >
</option>
<?
$requet="select * from salle";
if($result=mysql_query($requet))
{
while($ligne=mysql_fetch_array($result))
{
?><option value="<?echo $ligne['id_salle'];?>"><?
echo $ligne['salle'];
}
}
?></select>
<p align="center"><font size="3" face="Verdana" color="#697291">Choisissez le professeur :</p></font>
<select name="professeur" align="center">
<option value='-' >
</option>
<?
$requet="select * from professeurs";
if($result=mysql_query($requet))
{
while($ligne=mysql_fetch_array($result))
{
?><option value="<?echo $ligne['id_prof'];?>"><?
echo $ligne['nom'] ." ". $ligne['prenom'];
}
}
?></select>
<p align="center"><font size="3" face="Verdana" color="#697291">Choisissez l'année : </p></font>
<select name="annee" align="center">
<option value='-'>
</option>
<option value="1ère">1ère année
<option value="2ème">2ème année
<option value="3ème">3ème année
<option value="4ème">4ème année
<option value="5ème">5ème année
</select>
<br><br>
<table width="100%">
<tr>
<td align="center">
<input type="submit" value="Enregistrer">
<input type="hidden" name="num_emploi" value="<?echo $num_emploi;?>">
</td>
</tr>
</form>
</table>
Ces informations sont alors renvoyées vers cette page :
<?
if(isset($_POST['annee'])) $annee=$_POST['annee'];
else $annee="";
if(isset($_POST['matiere'])) $matiere=$_POST['matiere'];
else $matiere="";
if(isset($_POST['groupe'])) $groupe=$_POST['groupe'];
else $groupe="";
if(isset($_POST['specialite'])) $specialite=$_POST['specialite'];
else $specialite="";
if(isset($_POST['type'])) $type=$_POST['type'];
else $type="";
if(isset($_POST['duree'])) $duree=$_POST['duree'];
else $duree="";
if(isset($_POST['num_emploi'])) $num_emploi=$_POST['num_emploi'];
else $num_emploi="";
if ($duree==1)
{
$num_emploi=$num_emploi+1;
}
elseif ($duree==2)
{
$num_emploi=$num_emploi+2;
}
elseif ($duree==3)
{
$num_emploi=$num_emploi+3;
}
elseif ($duree==4)
{
$num_emploi=$num_emploi+4;
}
if(isset($_POST['salle'])) $salle=$_POST['salle'];
else $salle="";
if(isset($_POST['professeur'])) $professeur=$_POST['professeur'];
else $professeur="";
$bdd="université";
$host="localhost";
$user="root";
$pass="";
mysql_connect($host,$user,$pass) or die ("Impossible de se connecter à la base de données");
mysql_select_db($bdd);
$Query="INSERT INTO emploi(num_emploi,annee,id_matiere,groupe,id_spe,id_type,duree,id_salle,id_prof) VALUES ('$num_emploi','$annee','$matiere','$groupe','$specialite','$type','$duree','$salle','$professeur')";
$Result=mysql_query($Query) or die("impossible d'insérer");
$jour[0]='LUNDI';
$jour[1]='MARDI';
$jour[2]='MERCREDI';
$jour[3]='JEUDI';
$jour[4]='VENDREDI';
$jour[5]='SAMEDI';
$titre="Emploi du temps du groupe ".$groupe." de ".$annee." année<br> spécialité ".$specialite;?>
<h2 align="center"><?echo $titre?></h2>
<?
if(isset($Result))
{
echo"<b>L'édition du creneau a réussi</b><br><br>";
echo "<b><a href=http://127.0.0.1/projet/kit51/creation2.php>Editer un nouveau créneau</a><br><br></b>";
echo "<b><a href=http://127.0.0.1/projet/kit51/pageadmin.php>Changer d'année, de Groupe ou de spécialité</a></b>";
}
else
{
echo"<br><b>L'édition a échoué</b><br><br>";
echo "<b><a href=http://127.0.0.1/projet/kit51/creation2.php>Editer un nouveau créneau</a><br><br></b>";
echo "<b><a href=http://127.0.0.1/projet/kit51/pageadmin.php>Changer d'année, de Groupe ou de spécialité</a></b>";
}
?>
L'emploi du temps est alors créé, enfin j'espère.
Ensuite pour le visualiser j'ai créee un otre formulaire :
<?$bdd="université";
$host="localhost";
$user="root";
$pass="";
mysql_connect($host,$user,$pass) or die ("Impossible de se connecter à la base de données");
mysql_select_db($bdd);?>
<font face='tahoma'><p><h2 align="center">Modification des emplois du temps</h2></font></p>
<table width="70%" align="center">
<tr height="60">
<td colspan="2" align="center" valign="top"><font face='tahoma' ><b>Quel emploi du temps voulez-vous modifier?</b></td></font>
</tr>
<tr valign="top">
<td align="center"><font face='tahoma' >
<form action="visualisation.php" method='POST'>
<p><u>Choix de la spécialité : </u></p>
<select name="specialite" align="center">
<option value='-' >
</option>
<option value="calculatrice">calculatrice
<option value="electromecanique">electromecanique
<option value="electronique">electronique
<option value="electronique appliquee">electronique appliquee
<option value="mesures en ingenieurie electrique">mesures en ingenieurie electrique
<option value="systeme intelligent pour la communication">systeme intelligent pour la communication
</select>
</td>
</tr>
<tr>
<td align="center"><font face='tahoma' >
<p><u>Choix de l'année : </u></p>
<select name="annee" align="center">
<option value='-' >
</option>
<option value="1ère">1ère année
<option value="2ème">2ème année
<option value="3ème">3ème année
<option value="4ème">4ème année
<option value="5ème">5ème année
</select>
</td>
</tr>
<tr>
<td align="center"><font face='tahoma' >
<p><u>Choix du groupe : </u></p>
<select name="groupe" align="center">
<option value='-' >
</option>
<option value="1">1er groupe
<option value="2">2ème groupe
<option value="3">3ème groupe
<option value="4">4ème groupe
</select>
</td>
</tr>
<tr>
<td align="center">
<input type="submit" value="Enregistrer">
</td>
</tr>
</form>
</table>
mais lorsque je clique sur envoyer des erreurs apparaissent.
Le script pour la visualisation est le suivant :
<?
$bdd="université";
$host="localhost";
$user="root";
$pass="";
mysql_connect($host,$user,$pass) or die ("Impossible de se connecter à la base de données");
mysql_select_db($bdd);?>
<p align="center"><font size="6" face="Verdana" color="#235678">VISUALISATION D'UN EMPLOI DU TEMPS :</p></font>
<?
if(isset($_POST['annee'])) $annee=$_POST['annee'];
else $annee="";
if(isset($_POST['specialite'])) $specialite=$_POST['specialite'];
else $specialite="";
if(isset($_POST['groupe'])) $groupe=$_POST['groupe'];
else $groupe="";
echo "annee=".$annee."<br>";
echo "specialite=".$specialite."<br>";
echo "groupe=".$groupe."<br>";
//Envoi de la requete SQL
$Query1= "SELECT matiere FROM emploi WHERE annee='$annee' and groupe='$groupe' and specialite='$specialite' ";
if($Result1=mysql_query($Query1))
{
while($ligne=mysql_fetch_array($Result1))
{
$elem1=$ligne['id_matiere'];
}
}
$Query2= "SELECT professeur FROM emploi WHERE annee='$annee' and groupe='$groupe' and specialite='$specialite' ";
if($Result2=mysql_query($Query2))
{
while($ligne=mysql_fetch_array($Result2))
{
$elem2=$ligne['id_prof'];
}
}
$Query3= "SELECT salle FROM emploi WHERE annee='$annee' and groupe='$groupe' and specialite='$specialite' ";
if($Result3=mysql_query($Query3))
{
while($ligne= mysql_fetch_array($Result3))
{
$elem3=$ligne['id_salle'];
}
}
$Query4= "SELECT type FROM emploi WHERE annee='$annee' and groupe='$groupe' and specialite='$specialite' ";
if($Result4=mysql_query($Query4))
{
while($ligne=mysql_fetch_array($Result4))
{
$elem4=$ligne['id_type'];
}
}
$Query5= "SELECT duree FROM emploi WHERE annee='$annee' and groupe='$groupe' and specialite='$specialite' ";
if($Result5=mysql_query($Query5))
{
while($ligne=mysql_fetch_array($Result5))
{
$elem5=$ligne['duree'];
}
}
$jour[0]='LUNDI';
$jour[1]='MARDI';
$jour[2]='MERCREDI';
$jour[3]='JEUDI';
$jour[4]='VENDREDI';
$jour[5]='SAMEDI';
?>
<table width="100%" Border="0" align="center">
<tr align="center" ><b>
<td Width="9%"> </td>
<td Width="7%" align="left"><font face="tahoma" size="1">8h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">9h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">10h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">11h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">12h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">13h00</td> </font>
<td Width="7%" align="right"><font face="tahoma" size="1">14h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">15h00</td> </font>
<td Width="7%" align="right"><font face="tahoma" size="1">16h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">17h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">18h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">19h00</td></font>
<td Width="7%" align="right"><font face="tahoma" size="1">20h00</td></font>
</tr>
</table>
<table width="100%" border="1">
<?
$i=0;
while($i<6){
?>
<tr align="center" height="80">
<td Width="14%"><? echo $jour[$i]; ?><br></td>
<? $j=1;
while($j<12)
{
//Preparation de la requète SQL
$Query= "SELECT * FROM emploi WHERE num_emploi='$j'";
// Envoi de la requète SQL
$Result=mysql_query($Query) or die("Erreur");
$elem=mysql_fetch_array($Result);
switch($elem['duree']){
case '1' :$type="1heure";break;
case '2' :$type="2heures";break;
case '3' :$type="3heures";break;
case '4' :$type="4heures";break;
}
$prof=$elem['id_prof'];
$Query2= "SELECT * FROM professeurs WHERE id_prof='$prof'";
$Result=mysql_query($Query2);
$elem2=mysql_fetch_array($Result);
$prof=strtoupper($elem2['nom']);
//$Query3= "SELECT couleur FROM module WHERE ID_Module='$elem[ID_Module"]'";
//$Result3=mysql_query($Query3);
//$elem3=mysql_fetch_array($Result3);
//$couleur=$elem['couleur'];
//Si Creneau Impaire
if(($j%2)==1)
{
if(($elem['duree'])==1)
{
$j++?>
<td colspan="2" ><? echo $elem2['id_prof'];?><br><? echo $elem4['id_type'];?><br><? echo $elem3['id_salle'];?><br><? echo $elem1['id_matiere'];?></td>
<?
}
elseif($elem['duree']==2)
{?>
<td width="21%">
<table width="100%">
<tr>
<td width="40%"> </td>
<td bgcolor="red" width="60%"><? echo $elem2['id_prof'];?><br><? echo $elem4['id_type'];?><br><? echo $elem3['id_salle'];?><br><? echo $elem1['id_matiere'];?></td>
</tr>
</table>
<? }
elseif(($elem['duree'])==3)
{?>
<td width="21%" bgcolor="red"> </td>
<? }
else //Si c'est un TD ou un Partiel
{?>
<td width="21%" bgcolor="blue"><br><? echo $elem2['id_prof'];?><br><? echo $elem4['id_type'];?><br><? echo $elem3['id_salle'];?><br><? echo $elem1['id_matiere'];?></td>
<? }
}
else //Si creneau Paire
{
if(($elem['duree'])==4)
{?>
<td width="21%">
<table width="100%">
<tr>
<td width="60%" bgcolor="green"><br><? echo $elem2['id_prof'];?><br><? echo $elem4['id_type'];?><br><? echo $elem3['id_salle'];?><br><? echo $elem1['id_matiere'];?></td>
<td width="40%"> </td>
</tr>
</table>
<? }
}
$j++;
}
$i++;
}?>
</tr>
</table>
Les erreurs affichées sont du type :
Notice: Undefined variable: elem4 in c:\program files\easyphp1-8\www\monsite\kit51\visualisation.php on line 162
et elles apparaissent pour toutes la variables elem créées.
Si vous voyez où est le problème merci de m'en informer ou de me proposer une autre solution si vous en voyez une.
Merci d'avance pour toutes vos réponses.