erreur dans mon code php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : erreur dans mon code php

Re: erreur dans mon code php

par mere-teresa » 24 août 2011, 11:36

Transforme :
$sql=oci_parse($conn,"INSERT INTO participe(NOTE,id_eleve,id_evaluation) values('".$NOTE."','".$id_eleve."','".$id_evaluation."')"); 
en
$sql="INSERT INTO participe(NOTE,id_eleve,id_evaluation) values('".$NOTE."','".$id_eleve."','".$id_evaluation."')"; 
$ressource = oci_parse($conn,$sql); 
et surtout fais un print_r($sql) pour tester ta requête SQL avec un outil d'accès à ta base de données (pour MySQL, par ex, il existe PHPMyAdmin).

Re: erreur dans mon code php

par msi79 » 12 août 2011, 16:30

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

Re: erreur dans mon code php

par moogli » 12 août 2011, 15:40

ben non, y a 4 champs dans la table tu n'en indique que deux, suivant la construction de la table c'est normal que cela ne fonctionne pas (dans le cas des colonne non null par exemple, est ce que le sgbd insère automatiquement la date du jour ? etc etc)

@+

Re: erreur dans mon code php

par msi79 » 12 août 2011, 15:10

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

Re: erreur dans mon code php

par moogli » 12 août 2011, 02:03

t'expliquer quoi ?
on parle d'insertion tu fait un select ça ne peux pas aller.

une insertion c'est une requête INSERT INTO.

tu souhaite insérer des notes dans la table participe en spécifiant aussi la clef primaire de l'eval, celle de l'élève et date.

essai de construire cette requête, tu n'a pas compris le principe de l'insertion avec SQL ?

@+

Re: erreur dans mon code php

par msi79 » 12 août 2011, 01:06

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 ;

Re: erreur dans mon code php

par msi79 » 12 août 2011, 00:43

ok. bien saisie.
je dis explique moi bien

Re: erreur dans mon code php

par moogli » 12 août 2011, 00:40

http://sqlpro.developpez.com/cours/sqlaz/dml/

fait un p'tit effort pour l’orthographe / grammaire je ne suis pas doué mais tu frise le ridicule au vu de l'utilisation de ton appli et ça demande des efforts de compréhension que je n'ai pas forcément envie de faire.

bonne lecture ;)

@+

Re: erreur dans mon code php

par msi79 » 12 août 2011, 00:33

vraiment je suis pas. explik moi mieux. depuis matin je suis dessus .

Re: erreur dans mon code php

par moogli » 12 août 2011, 00:28

non, est ce que tu a compris ce que tu a mis la ?

Ta requête te renverra directement dans tes buts car elle n'est deja pas correcte.

commence par la formuler correctement et après ça ira.

tu a tous les éléments dans le formulaire (au pire s'il y a création d'évaluation tu récupère la clef primaire (id_eval) avant les insertions dans la table participe !).

@+

Re: erreur dans mon code php

par msi79 » 12 août 2011, 00:19

j'ai modifié ma table participe comme tu me l"a conseillé.
si je comprend bien ma requète va s'ecrire comme ca :
"INSERT INTO participe(NOTE) values('".$NOTE."',(SELECT NUM FROM eleve WHERE NUM.eleve=id_eleve.participe ;))"

Re: erreur dans mon code php

par moogli » 11 août 2011, 23:57

voici mes tables :
eleve( NUM,NOM,PRENOM,CLASSE,AGE,)
participe(NUM,id_eval,date_eval,note)
evaluation(id_eval,,type_eval)
les relation de tes tables ne sont pas correct et ton system ne pourra jamais fonctionner ainsi !

pourquoi ?

Parce que dans la table participe tu n'indique pas a qui appartient la note donc il est possible de faire quoique ce soit avec cette table.

elle devrait être
create table eleve( 
	NUM int ,
	NOM text,
	PRENOM text,
	CLASSE text,
	AGE text
)
create table participe(
	NUM int,
	id_eval int,
	id_eleve int,
	date_eval text,
	note float
)
create table evaluation(
	id_eval int,
	type_eval text
)
le id_eleve de la table participe correspond au NUM de la classe eleve !

a partir de la, et du code que je t'ai fournit, tu peux afficher un formulaire avec les noms de tous les élève de la classe en question. Il faut aussi afficher l'évaluation ou ajouter dans le formulaire de quoi ajouter cette évaluation dans la table.

Tu doit traiter ce formulaire avec une boucle et insère en boucle la chose.
pour cela tu peux utiliser une requête préparée.
afin de faciliter la chose, je t'invite a utiliser PDO :)


@+

Re: erreur dans mon code php

par msi79 » 11 août 2011, 13:39

j'ai expliqué ce que je voulait faire . il n ' ya personne pour m'aider ??

Re: erreur dans mon code php

par msi79 » 11 août 2011, 12:20

jai mi SELECT poue selectionner le nom prenom ki sont deja dans la base

Re: erreur dans mon code php

par ImogenLockhart123 » 11 août 2011, 09:04

ok j'ai compris pour la variable NOTE . elle ne fait pas parti de SELECT c pourquoi 3. merci.
mais explique moi pourquoi le SELECT c'est retouvé en bas .