IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Probleme saisie données formulaire [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 16
    Par défaut Probleme saisie données formulaire
    je suis en PFE dev site dynamique

    J'ai 3 tables Client, Formation et inscription
    les PK de client et formation sont FK dans inscription
    voici mes tables:
    Code SQL : 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
    create table Client
    (
       n_clt                          int                            not null,
       nom_clt                        text,
       prenom_clt                     text,
       profession_clt                 text,
       etablissement_clt              text,
       niveau_clt                     text,
       adr_mail_clt                   text,
       n_tel_clt                      bigint,
       primary key (n_clt)
    )
    type = InnoDB;
     
     
    create table Formation
    (
       n_formation                    int                            not null,
       nom_formation                  text,
       nom_module                     text,
       date_formation                 date,
       formule_formation              text,
       primary key (n_formation)
    )
    type = InnoDB;
     
    create table Inscription
    (
       n_clt                          int                            not null,
       n_formation                    int                            not null,
       n_inscription                  int,
       date_inscription               date,
       etat_inscription               text,
       mode_reglement                 text,
       primary key (n_clt, n_formation)
    )
    type = InnoDB;

    et pour les clés étrangères :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    alter table Inscription add constraint FK_Adherer_formation1 foreign key (n_clt)
          references Client (n_clt) on delete restrict on update restrict;
     
    alter table Inscription add constraint FK_Adherer_formation2 foreign key (n_formation)
          references Formation (n_formation) on delete restrict on update restrict;

    lors de l'enregistrement "php"
    tout va bien mais seules les clés étrangères restent à 0
    et lors d'un 2éme enregistrement====>"Erreur"

    voici la source php:
    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
    $requet1= ( "INSERT INTO client (nom_clt, prenom_clt, profession_clt, etablissement_clt, niveau_clt, adr_mail_clt, n_tel_clt) VALUES ('$nom', '$prenom', '$profession', '$etablissement', '$niveau', '$email', '$tel')"); 
     
    $requet2= ("INSERT INTO formation (nom_formation, nom_module, date_formation, formule_formation) VALUES ('$matiere', '$module', '$date', '$formule')"); 
     
     
    $nclient="select max(n_clt) from client "; 
    $nformation="select max(n_formation) from formation";
     
    $requet3= ("INSERT INTO inscription (n_clt, n_formation, date_inscription, etat_inscription, mode_reglement) VALUES ('$nclient', '$nformation', CURRENT_TIMESTAMP, '$val', '$val')"); 
     
     
    if(($enreg1=mysql_query($requet1 )) && ($enreg2=mysql_query($requet2)) && ($enreg3=mysql_query($requet3)))
    {
    echo"Mersi de votre confiance";
    }else{
    echo"Erreure de base de donnée.";
    }

    j'ai essayé plein de trucs mais rien à faire

    SVP aidez moi!!!!!!!!!!!!!!!!

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 16
    Par défaut Cannot add or update a child row: a foreign key constraint fails
    Au fait c'est le message d'erreur=>>>
    Cannot add or update a child row: a foreign key constraint fails

  3. #3
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    Ton erreur veut tout simplement dire que tes clés étrangères n'existent pas des clients et formation.

    ET tu as ceci tout simplement parce que lui passe une chaine de caractères comme identifiant.
    Il faut que tu modifies tout ça pour obtenir un entier. Je parle du select MAX.
    Je te propose de faire des requêtes suivies de tests.
    En gros tu executes les deux premières et tu récupères leur id grace à la fonction php mysql_insert_id et là tu pourras faire ta 3eme requête.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 16
    Par défaut snif
    ah bin sa marche mersi kerod

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Probleme écrire donnée formulaire
    Par scado dans le forum Modélisation
    Réponses: 4
    Dernier message: 10/02/2010, 14h56
  2. [Excel] Intégrer au fichier Excel des données saisies par formulaire
    Par drogba72 dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 21/05/2008, 11h13
  3. [table] probleme de données saisies
    Par sumtech dans le forum Access
    Réponses: 47
    Dernier message: 04/05/2007, 22h05
  4. [probleme] teste de saisie de formulaire
    Par razielmyth dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 04/01/2006, 11h43
  5. ptit probleme de controle de saisie de formulaire
    Par coachbob44 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 24/03/2005, 14h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo