Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/11/2010, 15h54   #1
Invité de passage
 
Inscription : novembre 2010
Messages : 1
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 1
Points : 0
Points : 0
Par défaut Problème de recuperation et utilisation variables

Bonjour j'ai un problème avec une de mes pages PHP sur mon site.

Au début de la page il y a 3 SELECT avec lesquels ont forme alors
un affichage en tableau avec le nom et prenom des élèves et une
case TEXTAREA dans laquelle on insére sa note.

On utilise des variables telles que :

$idclasse
$ide
$idc
etc

ensuite on a donc un bouton dans le code PHP qui ENREGISTRE les
notes et ensuite en bas la suite du code qui est censé prendre le
tout et l'insérer dans la table des notes!

Cependant la denière partie ne fonctionne pas.. Pourriez vous m'aider?
Code :
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
<?php
					$idclasse = isset($_GET['id']) ? $_GET['id'] : '';
					$idc = isset($_GET['controle']) ? $_GET['controle'] : '';
					$idp = isset($_GET['periode']) ? $_GET['periode'] : '';
 
 
					$connect = mysql_connect("localhost", "root", "root"); // Récupération du handle dans une variable
					mysql_select_db("bulletin");
 
					$resultat = mysql_query("	SELECT	el.nom_personne,el.prenom_personne,el.id_personne,el.id_classe,
														pr.id_personne, pr.id_personne,cl.nom_classe,cl.id_classe
												FROM 	eleves el, profs pr, profclasse pc, classes cl
												WHERE	pr.id_personne = '$log' AND
														pc.id_classe = el.id_classe AND
														pc.id_personne = '$log' AND
														pc.id_classe = '$idclasse' AND
														el.id_classe = '$idclasse' AND
														cl.id_classe = '$idclasse'
												ORDER BY el.id_classe
									");
					echo ' <form method="post" action="ajouter_note.php">';
					echo '<fieldset><legend>Renseignements</legend>';
					echo '<table class="tableau" CELLSPACING=0 border="2px" align="center">';
					echo '<tr><td> Nom </td><td> Prénom </td><td> Note </td></tr>';
					while ( $row = mysql_fetch_array($resultat)){
						$temp = $row['id_personne'];
						echo '<tr><td> '.$row['nom_personne'].' </td><td> '.$row['prenom_personne'].' </td><td>
						<input type =text name = note[] value=""></td></tr>';
					}
					echo '</table><br>';
					echo '<td><INPUT name="Enregistrer" type="submit" value="Enregistrer"></td>';
					echo '<td><INPUT type="reset" value="Annuler"></td>';
					echo '</fieldset>';
					echo "</form>";	
 
					mysql_close($connect);
					?>
					<?php
					$connect = mysql_connect("localhost", "root", "root"); // Récupération du handle dans une variable
					mysql_select_db("bulletin");
 
					$idclasse = isset($_GET['id']) ? $_GET['id'] : '';
					$idc = isset($_GET['controle']) ? $_GET['controle'] : '';
					$idp = isset($_GET['periode']) ? $_GET['periode'] : '';
 
					echo $idclasse;
 
 
					$note = isset($_POST['note']) ? $_POST['note'] : '';
 
						$sql1="select id_personne from eleves e,classes c where e.id_classe ='$idclasse' AND c.id_classe='$idclasse'";
						$res1=mysql_query ($sql1);
						$i=0;
						while ( $row = mysql_fetch_array($res1)){
							$ide=$row['id_personne'];
							$note_eleve=$note[$i];
							$sql="insert into notes (id_personne, id_periode, note,id_controle) values ('$ide','$idp','$note_eleve','$idc')";
							mysql_query ($sql);
							echo $sql;
							$i++;
						}
 
 
					mysql_close($connect);
					?>
rabbitou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/11/2010, 16h24   #2
Membre éclairé
 
Inscription : octobre 2004
Messages : 235
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 235
Points : 360
Points : 360
Le principe est déjà mauvais par essence : tu n'ordonnes même pas le résultat des requêtes !
Le minimum serait de passer "note" sous forme d'un tableau indexé par la clé de l'enregistrement...
Joker-eph est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2010, 13h42   #3
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 957
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 957
Points : 18 163
Points : 18 163
Envoyer un message via MSN à CinePhil
Il manque les conditions de jointures dans ta requête. Et celles-ci s'écrivent depuis 1992 avec l'opérateur JOIN.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h09.


 
 
 
 
Partenaires

Hébergement Web