Kentalor2016
-
Modifié par BunoCS le 23/03/2016 à 11:14
BunoCS
Messages postés15472Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention25 mars 2024
-
23 mars 2016 à 11:15
Bonjour à tous,
J'ai un petit problème concernant l'enregistrement des données dans ma BD.
Je suis connecté à une session et je fais deux enregistrement dans une BD et dans deux tables différents. quand je fait ceci:
<?php
if(isset($_POST['nom']) and isset($_POST['code']) and isset($_POST['type']) and isset($_POST['nature']) and isset($_POST['cycle'])and isset($_POST['enseignement']) and isset($_POST['region']) and isset($_POST['departement']) and isset($_POST['arrondissement']) and isset($_POST['ville']) and isset($_POST['date'])){
if(($_POST['code']!='') and ($_POST['type']!='')){
$c = new PDO('mysql:host=localhost;dbname=gestat', 'root', '');
$req = $c->prepare('INSERT INTO etablissement(nom_eta, Code_Eta, Type_eta, Nature_Eta, Nb_Cycle_Eta, Type_Ens_Eta, Region_Eta, Departement_Eta, Arrondissement_Eta, Ville_Eta, Date_Eta) VALUES(:nom,
:code, :type, :nature, :cycle, :enseignement, :region, :departement,
:arrondissement, :ville, :date)');
$req->execute(array('nom' => $_POST['nom'],'code' => $_POST['code'],
'type' => $_POST['type'],'nature' => $_POST['nature'],'cycle' => $_POST['cycle'],'enseignement' => $_POST['enseignement'],'region' => $_POST['region'],'departement' => $_POST['departement'],'arrondissement' => $_POST['arrondissement'],'ville' => $_POST['ville'],'date' => $_POST['date']));
echo 'L\'établissement a bien été ajouté !';
}
}
?>
L'insertion dans la table etablissement se passe très bien. lors que je fais plutôt ceci
<?php
if(isset($_POST['nom']) and isset($_POST['prenom']) and isset($_POST['login']) and isset($_POST['mdp']) and isset($_POST['sexe']) and isset($_POST['categorie']) and isset($_POST['nom_eta'])){
if(($_POST['login']!='') and ($_POST['mdp']!='')){
$c = new PDO('mysql:host=localhost;dbname=gestat', 'root', '');
$req1 = $c->prepare('SELECT id_eta FROM etablissement WHERE nom_eta = ?');
$req1->execute(array($_POST['nom_eta']));
while ($donnees = $req1->fetch())
{
$id=$donnees['id_eta'];
}
$req = $c->prepare('INSERT INTO personnel(nom_pers, prenom_pers,
login, password, Sexe_pers, Cat_pers, Id_Eta) VALUES(:nom,:prenom, :login, :password, :Sexe, :Categorie, :Id)');
$req->execute(array('nom' => $_POST['nom'],'prenom' => $_POST['prenom'],'login' => $_POST['login'],'password' => $_POST['mdp'],
'Sexe' => $_POST['sexe'],'Categorie' => $_POST['categorie'],'Id' => $id));
echo 'Le personnel a bien été ajouté !';
}
}
?>
Je reçois bien le message 'Le personnel a bien été ajouté !', mais quand je part vérifier dans la table personnel, je ne trouve rien.
SVP aidez moi à comprendre ce qui ne marche pas. Merci d'avance.
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ICI