Bonjour,
Je vous explique mon problème.
J'ai trois listes formation, année et semestre qui me permet en sélectionnant un choix me permet de générer une troisième liste .
A partir du choix sur cette dernière, je récupère un identifiant et un nom de module.
Avec ces informations, je veux réaliser une mise à jour dans une table note en faisant une condition WHERE sur l'identifiant et le nom du module.
Le problème, c'est que ma mise à jour ne se fait pas mais je ne vois pas pourquoi ma requête UPDATE ne marche pas.
Je vous met le code. Merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118 <?php if (isset ($_POST['VALIDER'])){ //Connection à la base de données connectMaBase(); //On récupère les valeurs entrées par l'utilisateur : $annee=$_POST['ANNEE']; $formation=$_POST['FORMATION']; $semestre=$_POST['SEMESTRE']; //Création de session pour stocker le nom ,la date de la formation et le semestre $_SESSION['formation'] = $formation ; $_SESSION['annee'] = $annee ; $_SESSION['semestre'] = $semestre ; //Récupération des coordonnées des étudiants correspondant à la formation choisie $sqlnom = " SELECT NomEtudiant, PrenomEtudiant, IdEtudiant FROM etudiant WHERE (NomFormation='$formation' AND DateFormation='$annee')"; $result = mysql_query($sqlnom) or die("Erreur dans la requête sur la table etudiant"); //Récupération des modules correspondant à la formation choisie $sqlmodule = " SELECT NomModule FROM modules WHERE (NomFormation='$formation' AND DateFormation='$annee' AND NumSemestre='$semestre')"; $resultmodule = mysql_query($sqlmodule) or die("Erreur dans la requête sur la table module"); //On ferme la connexion mysql_close(); } ?> <FORM name="formulaire2" action="Modifiernote.php" method="post"> <br><br> <div id="decalage"> <label for="NomEtudiant">Etudiants de cette formation : </label><select name="NomEtudiant"> <?php //Génération de la liste dynamique pour les étudiants while ($row=mysql_fetch_array($result)) { echo"<option value='".$row[2]."'>".$row[0]." ".$row[1]." - ".$row[2]."</option>"; } ?> </select> </div> <br> <div id="decalage"> <label for="Listemodules">Modules de cette formation : </label><select name="Listemodules"> <?php //Génération de la liste dynamique pour les modules while ($row2=mysql_fetch_array($resultmodule)) { echo"<option value='".$row2[0]."'>".$row2[0]."</option>"; } ?> </select> </div> <br><br> <div id="decalage"> <label for="NOTEEXAMEN">NOTE EXAMEN :</label><input type="text" name="NOTEEXAMEN" id="NOTEEXAMEN" maxlength="2" size="2"> <br> <br> <label for="NOTETP">NOTE TP :</label><input type="text" name="NOTETP" id="NOTETP" maxlength="2" size="2"> <br> <br> <?php if (isset ($_POST['VALIDATION'])){ //Connection à la base de données connectMaBase(); $noteExam=parseInt($_POST['NOTEEXAMEN']); $noteTP=parseInt($_POST['NOTETP']); $nomModule=$_POST['Listemodules']; $etudiantId=$_POST['NomEtudiant']; //Si on désire changer la note d'examen //if (!empty($noteExam)) //{ $sqlupdateexam = "UPDATE note SET NoteExam ='".$noteExam."' WHERE (IdEtudiant='".$etudiantId."' AND NomModule='".$nomModule."')"; mysql_query ($sqlupdateexam) or die ('Erreur lors de la modification de la note d\'examen !'.$sqlupdateexam.'<br />'.mysql_error()); //} //Si on désire changer la note de TP //if (!empty($noteTP)) //{ $sqlupdatetp = "UPDATE note SET NoteTp = '".$noteTP."' WHERE (IdEtudiant='".$etudiantId."' AND NomModule='".$nomModule."')"; mysql_query ($sqlupdatetp) or die ('Erreur lors de la modification de la note de TP !'.$sqlupdatetp.'<br />'.mysql_error()); //} //Calcul de la moyenne du module if (empty($noteTP)) { $moyennne=$noteExam; } else { $moyennne=(2/3)*$noteExam+(1/3)*$noteTP; } //Mise à jour de la moyenne du module si une note a été modifiée //if (!empty($noteExam)||!empty($noteTP)) //{ $sqlupdatemoy = "UPDATE note SET moy = '".$moyennne."' WHERE (IdEtudiant='".$etudiantId."' AND NomModule='".$nomModule."')"; mysql_query ($sqlupdatemoy) or die ('Erreur lors de la modification de la moyenne du module !'.$sqlupdatemoy.'<br />'.mysql_error()); //} //On ferme la connexion mysql_close(); } ?>
Partager