Probleme d'insertion php/mysql [Résolu]

Signaler
Messages postés
17
Date d'inscription
mardi 31 décembre 2013
Statut
Membre
Dernière intervention
13 janvier 2014
-
Messages postés
17
Date d'inscription
mardi 31 décembre 2013
Statut
Membre
Dernière intervention
13 janvier 2014
-
Bonjour,
les amis j'ai un petit probleme avec l'insertion de données avec php et pdo ce code ne me revois aucune erreur mais lorsque j'accède a ma base de données les champs que j'ai ajouté ne s'affiche pas dans ma base de données.

voici mon code






<html>
<head>
<body><title> inscription </title>
<form name="inscription" method="POST" action="inscr.php" >
numero :<input name="num" type="text"><br/>
nom :<input name="nom" type="text"><br/>
prenom :<input name="prenom" type="text"><br/>
<p>votre filiere</p>
<input type="radio" name="filiere" value="IMS" /><label>IMS</label> <br />
<input type="radio" name="filiere" value="ME" /><label>ME</label> <br />
<input type="radio" name="filiere" value="MT" /><label>MT</label> <br />
<p>votre option</p>

<select name="option">
<option value="CIM"> CIM </option>
<option value="MACRO"> MACRO </option>
<option value="MICRO"> MICRO </option>
<option value="MFE">MFE </option>
</select>
<p>votre sous_option</p>
<select name="sous_option">
<option value="ERE"> ERE </option>
<option value="AERO"> AERO </option>
<option value="ENER"> ENER </option>
<option value="VINCI">VINCI </option>
<option value="VINCI">ASS </option>
<option value="VINCI">STCM </option>
</select><br/><br/>


<input type='submit' name='ok' value='ok' >
</form>

<?php
if (isset($_POST['ok'])){
$num=$_POST['num'];
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$filiere=$_POST['filiere'];
$option=$_POST['option'];
$sous_option=$_POST['sous_option'];

try{
$bdd = new PDO('mysql:host=localhost;dbname=sousstech', 'root', '');
}catch(Exception $e) {die('Erreur :'.$e->getMessage());}

/*$bdd->exec('insert into elève (ID_Eleve, Nom_ELEVE,Prenom_ELEVE,Filiere,Option,Sous_option)
values( "'.$num.'","'.$nom.'","'.$prenom.'","'.$filiere.'","'.$option.'","'.$sous_option.'")'); */
/*
$req = $bdd->prepare('INSERT INTO elève (ID_Eleve, Nom_ELEVE,Prenom_ELEVE,Filiere,Option,Sous_option) VALUES(?,?,?,?,?,?)');
$req->execute(array($_POST['num'],$_POST['nom'],$_POST['prenom'],$_POST['filiere'],$_POST['option'],$_POST['sous_option']));
*/

//$bdd->exec('INSERT INTO elève (ID_Eleve, Nom_ELEVE, Prenom_ELEVE, Filiere, Option, Sous_option) VALUES (921,\'bour\', \'oub\', \'ME\',\'MACRO\' ,\'ASS\' )');


$req =$bdd->prepare('INSERT INTO elève (ID_Eleve, Nom_ELEVE,Prenom_ELEVE,Filiere,Option,Sous_option) VALUES(:ID_Eleve, :Nom_ELEVE, :Prenom_ELEVE, :Filiere, :Option , :Sous_option)');
$req->execute(array(
'ID_Eleve' => $num,
'Nom_ELEVE' => $nom,
'Prenom_ELEVE' => $prenom,
'Filiere' => $filiere,
'Option' => $option,
'Sous_option' => $sous_option
));

echo 'insertion effectuer <br/>';


}
?>

</body>
</html>

5 réponses

Messages postés
17
Date d'inscription
mardi 31 décembre 2013
Statut
Membre
Dernière intervention
13 janvier 2014

voila la table élève

CREATE TABLE 'elève' (
'ID_Eleve' mediumint(8) unsigned NOT NULL COMMENT 'N°etudiant',
'Nom_ELEVE' varchar(20) collate utf8_unicode_ci NOT NULL,
'Prenom_ELEVE' varchar(20) collate utf8_unicode_ci NOT NULL,
'Filiere' enum('IMS','ME','MT') collate utf8_unicode_ci default NULL,
'Option' enum('CIM','MACRO','MICRO','MFE') collate utf8_unicode_ci default NULL,
'Sous_option' enum('ERE','AERO','ENER','VINCI','ASS','STCM') collate utf8_unicode_ci default NULL,
PRIMARY KEY ('ID_Eleve')
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Messages postés
17
Date d'inscription
mardi 31 décembre 2013
Statut
Membre
Dernière intervention
13 janvier 2014

help
Messages postés
29810
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
23 octobre 2020
338
Bonjour,

Déjà.. commence par utiliser la COLORATION SYNTAXIQUE pour que ton code soit plus lisible sur le forum.

Ensuite... retire nous TOUS les codes "morts".. c'est à dire les lignes que tu as mis en commentaire et qui sont inutiles (et inutilisées) dans ton code.

Enfin, histoire que tu puisses voir si ta requête est bonne, commence déjà par faire un ECHO sur ton tableau de variables et vérifie qu'elles sont conformes à ce que tu dois insérer en base.

comme par exemple:
$mesVariables=array(
'ID_Eleve' => $num,
'Nom_ELEVE' => $nom,
'Prenom_ELEVE' => $prenom,
'Filiere' => $filiere,
'Option' => $option,
'Sous_option' => $sous_option )   ;
print_r($mesVariables);


Après, je ne suis pas trop familier avec l'utilisation de la PDO... mais bon, une fois que tu auras répondu à mes remarques nous verrons ce que nous pourrons faire.
Messages postés
17
Date d'inscription
mardi 31 décembre 2013
Statut
Membre
Dernière intervention
13 janvier 2014

merci je vais essayer
Messages postés
17
Date d'inscription
mardi 31 décembre 2013
Statut
Membre
Dernière intervention
13 janvier 2014

prob resolu