Bonjour,
Salut à tous les membres, j'ai un problème au niveau de l'insertion de données dans 3 tables avec MYSQL ...un petit résumé de mes 3 tables : un client soit il est une personne physique soit personne morale ... pour cela au niveau de la table client j'ai mis les attributs en commun autre les tables personne physique et celle morale , et à chacune de ces 2 tables j'ai mis les attributs spécifiques à chacune de deux ....
sachant que la 1re table nommée Client :d'attributs :Id_Client(incrémentation automatique de cet attribut),Nom_Client,Tel_Client,GSM_Client,Adresse_Client . Cette table est une table mère possédant des attributs communs chez les 2 tables filles ...
la 1re table fille nommée personne physique d'attributs : CIN_Client,Prenom_Client,Id_client(clé_étrangère) ...
la 2éme table fille nommé personne morale(c.a.d Entreprise) d'attributs :
Matricule_Fiscale,Raison_Sociale,Id_Client(Clé étrangère) ...
Donc après que je clique sur le bouton du formulaire qui permet d'ajouter des champs à soit la table mère et à la table fille 1 ou soit à la table mère et à la table fille 2 ...
voici le code : cible.php
Code php : 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 <?php include("cnx.php"); if ((!empty($cin_client)) AND (!empty($prenom_client))) { $req= $bdd->prepare('INSERT INTO clients(Nom_Client,Tel_Client,GSM_Client,Adresse_Client) values(?,?,?,?)'); $req->execute(array($_POST['nom_client'],$_POST['tel_client'],$_POST['gsm_client'],$_POST['adresse_client'])); $req2= $bdd->prepare('INSERT INTO personne_physique(CIN_Client,Prenom_Client,Id_Client) values(?,?,clients.Id_Client)'); $req2->execute(array($_POST['cin_client'],$_POST['prenom_client'])); } elseif ((!empty($matricule_fiscale)) AND (!empty($raison_sociale))) { $req= $bdd->prepare('INSERT INTO clients(Nom_Client,Tel_Client,GSM_Client,Adresse_Client) values(?,?,?,?)'); $req->execute(array($_POST['nom_client'],$_POST['tel_client'],$_POST['gsm_client'],$_POST['adresse_client'])); $req3= $bdd->prepare('INSERT INTO personne_morale(Matricule_Fiscale,Raison_Sociale,Id_Client) values(?,?,clients.Id_Client)'); $req3->execute(array($_POST['matricule_fiscale'],$_POST['raison_sociale'])); } if ( ( ($req) and ($req2) ) or ( ($req) and ($req3) ) ) { echo "Ajout est fait"; } else { echo "pas d'ajout"; } ?>
MYSQL ma répondu par un erreur au niveau de la dernière condition avec if(qui est en gras) avec ce message :
Notice: Undefined variable: req in C:\wamp\www\menu_pr\cible.php on line 17
et merci , j'attends vos réponses avec impatience ..
Partager