Enreqistrer des notes d'eleves en php

Fermé
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023 - 11 août 2011 à 20:23
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 - 12 août 2011 à 17:00
salut a tous .
je veux enregistrer les notes des eleves mais ma requete passe pas . s'il vous plait aider moi .
voici mon code :

<?php
$date = date("d-m-Y");
$heure = date("H:i");
echo 'Nous sommes le '.$date.' et il est '.$heure;
?>
<?php
if (isset($_POST["valider"])) {
    $NOTE=trim($_POST["NOTE"]);
    $conn = oci_connect("zana", "cool75sool", '(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcldb)
      (INSTANCE_NAME = orcldb)
      (GLOBAL_NAME = orcldb)
    ))');
    	
		$sql=oci_parse($conn,"INSERT INTO participe(NOTE) values('".$NOTE."',(SELECT NUM FROM eleve WHERE NUM.eleve=Num.participe))");
			$result = oci_execute($sql);  
		if ($result) {
			$msg="<font color=green>insertion OK</font>";
		}
		else {
			$msg="<font color=red>insertion impossible</font>";
		}
		 /*

    Analyse et exécution d'autres commandes ici...

    */

    // Validation de la transaction
    $committed = oci_commit($conn);

    // Vérification de la validation : si une erreur est survenue, afficher
    // le message d'erreur
    if (!$committed) {
        $error = oci_error($conn);
        echo 'Validation échouée. Oracle dit : ' . $error['message'];
    }
	else{ echo '------------------------Insersion OK !!!!!!!!!';}
	
	}
	 


?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans titre</title>
</head>

<body>
<table width="200" border="0" align="center" bgcolor="#CCCCCC">
  <tr>
    <td colspan="2">-------------Sa Note------------- </td>
  </tr>
  <tr>
    <td width="40">note</td>
    <td width="144"><input type="text" name="NOTE" value=""/></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td><input type="submit" name="Valider" value="Enregistrer" /></td>
    <td><input type="reset" name="Submit2" value="Annuler" /></td>
  </tr>
</table>
</body>
</html>
A voir également:

13 réponses

Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
Modifié par Fallentree le 12/08/2011 à 00:01
Bonsoir,

$sql=oci_parse($conn,"INSERT INTO participe(NOTE) values('".$NOTE."',(SELECT NUM FROM eleve WHERE NUM.eleve=Num.participe))");


c est ce truc la qui marche pas ???

ton hypothèse de laison NUM.eleve=Num.participe ne semble pas lier à la table eleve...

si je comprends bien ta liaison : ...(SELECT NUM FROM eleve WHERE eleve.NUM=".$elevequialanote."))

J espère t avoir eclairé.
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 00:13
je comprend pa cette variable : .$elevequialanote.
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
Modifié par Fallentree le 12/08/2011 à 00:21
ta condition where depend de la clef affecté a l eleve, non ?
je l ai nommé $elevequialanote
participe(NOTE) est bien la table des notes ???
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 00:25
voici mes tables:
eleve( NUM,NOM,PRENOM,CLASSE,AGE,)
participe(NUM,id_eleve,id_eval,date_eval,note)
evaluation(id_eval,,type_eval)
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
Modifié par Fallentree le 12/08/2011 à 00:32
il te manques la deuxieme valeur dans le insert
INSERT INTO participe(NOTE,id_eleve) values('".$NOTE."' ....
deja ...
Puis apres la jonction, est trop bizarre ...
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 00:51
j'ai pas compris ton explication alors j'ai essayé ca mais ca marche toujours pas !
:

SELECT a.NUM,b.id_eleve FROM eleve a,participe b WHERE a.NUM=b.id_eleve ;
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
Modifié par Fallentree le 12/08/2011 à 00:59
1- la ligne que tu veux deux elements: la note et l id ...
2- il te faut au moins l id de l eleve comme 2eme parametre de ton fichier php.
est ce que ton formulaire te donne ces 2 params???
dans ce cas ....
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
Modifié par Fallentree le 12/08/2011 à 01:02
INSERT INTO participe (NOTE,id_eleve) values('".$NOTE."',(SELECT a.NUM FROM eleve a,participe b WHERE a.NUM=b.id_eleve and a.NUM=".$elevequialanote ." ))
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 01:02
au fait les élèves sont deja enregistré dans ma base de donnée . je veu enregistrer leur note apres chaque eveluation
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 01:05
a quoi refère .$elevequialanote. et ou et comment l'utiliser
je suis perdu avec cette variable. explique moi son role
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
12 août 2011 à 02:28
apres if (isset($_POST["valider"])) {rajoute print_r ($_POST);

dis moi ce qu elle renvoie ...
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 12:54
print_r($_POST) affiche les information de la variable $_POST
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 15:09
voici mes tables :
eleve( NUM,NOM,PRENOM,CLASSE,AGE,) 
participe(id_eleve,id_eval,date_eval,note) /////////// id_eleve fait reference a NUM 
evaluation(id_eval,,type_eval)

j'ai enlevé SELECT qui se trouvait dans mon INSERT .
j'ai mis :

"INSERT INTO participe(NOTE,id_eleve) values('".$NOTE.",'".$id_eleve."')" .
mais jusque la ca marche pas
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
Modifié par Fallentree le 12/08/2011 à 15:22
'".$NOTE.",'".$id_eleve."')"
Manque un quillemet
'".$NOTE."','".$id_eleve."')"
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 15:26
je viens de rectifier ça mais toujours pas d'insertion .
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
12 août 2011 à 16:16
en mysql c est du genre
$lign= "INSERT INTO '".$table."' ('Album', 'Date','login') VALUES ".$value.";";
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
12 août 2011 à 16:17
table et value sont des variables d une classe ...
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
12 août 2011 à 16:18
$value est sous la forme ('string','date',integer)
0
lupuz Messages postés 68 Date d'inscription mercredi 10 août 2011 Statut Membre Dernière intervention 12 août 2011 11
12 août 2011 à 15:45
vu le nombre de fois ou tu as poster ce bout de code sur CCM.
Tu ne devrais pas chercher à comprendre (en trouvant un bon livre su PHP par exemple) plutôt que de faire développer ton script par tous les membres de ce forum ?
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 16:15
voici ma nouvelle table et ma nouvelle requête :

participe(NOTE,id_eleve,id_evaluation) /////////// id_eleve fait reference a NUM

$sql=oci_parse($conn,"INSERT INTO participe(NOTE,id_eleve,id_evaluation) values('".$NOTE."','".$id_eleve."','".$id_evaluation."')");

je reçois toujours pas d'insertion de note
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
12 août 2011 à 16:25
participe(NOTE

rajoute peut etre un espace
participe (NOTE
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 16:20
tu viens de m'achever la avec la notion de classe . je veux faire un truck sans passer par les classes
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
12 août 2011 à 16:26
C'est studieux ou <<Stu dit: "Hantes">>
0
msi79 Messages postés 509 Date d'inscription lundi 24 août 2009 Statut Membre Dernière intervention 2 mai 2023
12 août 2011 à 16:29
toujours rien meme avec l'espace
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 208
Modifié par Fallentree le 12/08/2011 à 17:08
Pour finir sur la requete les guillemets autour de (NOTE,id_eleve,id_evaluation)
soit ('NOTE','id_eleve','id_evaluation')

En mysql c est les guillements du 7 en AltGr

regarde un topic du meme genre https://forums.commentcamarche.net/forum/affich-22872364-modification-profil-erreur-php
0