Probleme dinsertion php/mysql

Résolu/Fermé
ayoubbrs - Modifié par pijaku le 2/01/2014 à 13:19
Super_carotte Messages postés 1419 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 27 janvier 2015 - 2 janv. 2014 à 09:26
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 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 name="ok" type="submit"   value="ok"><br/>
</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']));


echo 'insertion effectuer';

}
?>



</body>
</html>

===========================

8 réponses

ayoubbrs Messages postés 17 Date d'inscription mardi 31 décembre 2013 Statut Membre Dernière intervention 13 janvier 2014
31 déc. 2013 à 11:09
s il vous plait je suis débutant en php aide moi
0
ayoubbrs Messages postés 17 Date d'inscription mardi 31 décembre 2013 Statut Membre Dernière intervention 13 janvier 2014
Modifié par pijaku le 2/01/2014 à 13:20
voila mon code eleve
==============
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;


Contenu de la table 'elève'
INSERT INTO 'elève' ('ID_Eleve', 'Nom_ELEVE', 'Prenom_ELEVE', 'Filiere', 'Option', 'Sous_option') VALUES
(9876523, 'KEZIBRI', 'Nouamane', 'ME', NULL, NULL),
(12356789, 'QACHFAR', 'Oumaima', 'IMS', NULL, NULL);


--
0
ayoubbrs Messages postés 17 Date d'inscription mardi 31 décembre 2013 Statut Membre Dernière intervention 13 janvier 2014
31 déc. 2013 à 15:37
help
0
Super_carotte Messages postés 1419 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 27 janvier 2015 127
31 déc. 2013 à 15:53
Premiere étape:
fais un echo de ta requete, copie la requete qui s'affiche a l'ecran et passe la directement a ta BDD pour voir si la requete est correctement construite.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Super_carotte Messages postés 1419 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 27 janvier 2015 127
Modifié par pijaku le 2/01/2014 à 13:20
Créé ta table comme ça:
CREATE TABLE eleve (
ID_Eleve INT UNSIGNED NOT NULL AUTO_INCREMENT,
Nom_ELEVE varchar(20) NOT NULL,
Prenom_ELEVE varchar(20) NOT NULL,
Filiere enum('IMS','ME','MT') default NULL,
nom_Option enum('CIM','MACRO','MICRO','MFE') default NULL,
Sous_option enum('ERE','AERO','ENER','VINCI','ASS','STCM') default NULL,
PRIMARY KEY (ID_Eleve)
);
0
Super_carotte Messages postés 1419 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 27 janvier 2015 127
Modifié par Super_carotte le 31/12/2013 à 16:13
Bonjour,
Je suis trés pressé, voila un correctif. jen'ai maheuresement pas le temps de t'exmplquer.
Etudie ce code et pose des questions, j'y repondrai demain.

Et il y a beaucoups de chose pas super dans ton code, on en reparlera.

ta table a recréer avec ce nouveau code:
CREATE TABLE eleve (
ID_Eleve INT UNSIGNED NOT NULL AUTO_INCREMENT,
Nom_ELEVE varchar(20) NOT NULL,
Prenom_ELEVE varchar(20) NOT NULL,
Filiere enum('IMS','ME','MT') default NULL,
nom_Option enum('CIM','MACRO','MICRO','MFE') default NULL,
Sous_option enum('ERE','AERO','ENER','VINCI','ASS','STCM') default NULL,
PRIMARY KEY (ID_Eleve)
);



Ton code de page:
<?php

/**
* Classe implémentant le singleton pour PDO
* @author Savageman
*/

class PDO2 extends PDO {

private static $_instance;

/* Constructeur : héritage public obligatoire par héritage de PDO */
public function __construct( ) {

}
// End of PDO2::__construct() */

/* Singleton */
public static function getInstance() {

if (!isset(self::$_instance)) {

try {

self::$_instance = new PDO('mysql:host=localhost;dbname=sousstech', 'root', '');

} catch (PDOException $e) {

echo $e;
}
}
return self::$_instance;
}
// End of PDO2::getInstance() */
}

function submit_request($sql){
$pdo = PDO2::getInstance();
$resultats = $pdo->prepare($sql);
if ($resultats->execute()) {
// $result = $resultats->fetchAll();
$result = $resultats->fetchALL(PDO::FETCH_ASSOC);
return $result;
}
return $resultats->errorInfo();
}
?>
<html>
<head>
<body><title> inscription </title>
<form method="POST" action="#" >
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 name="ok" type="submit" value="ok"><br/>
</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']; */



/*$bdd->exec('insert into elève (ID_Eleve, Nom_ELEVE,Prenom_ELEVE,Filiere,Option,Sous_option)
values( "'.$num.'","'.$nom.'","'.$prenom.'","'.$filiere.'","'.$option.'","'.$sous_option.'")'); */

$requete="INSERT INTO eleve('Nom_ELEVE',
'Prenom_ELEVE',
'Filiere',
'nom_Option',
'Sous_option')
VALUES( '".$_POST['nom']."',
'".$_POST['prenom']."',
'".$_POST['filiere']."',
'".$_POST['option']."',
'".$_POST['sous_option']."'
)";

echo $requete;
$result=submit_request($requete);


echo '</br>insertion effectuer';

}
?>



</body>
</html>
0
ayoubbrs Messages postés 17 Date d'inscription mardi 31 décembre 2013 Statut Membre Dernière intervention 13 janvier 2014
Modifié par ayoubbrs le 31/12/2013 à 17:25
merci mon amis pour tes conseils j vais essayé de les appliquer , en effet je suis entraine de débuter en php si vous avez un bon tuto ca sera utile pr moi.
merci
0
Super_carotte Messages postés 1419 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 27 janvier 2015 127
2 janv. 2014 à 09:26
Bonjour,

VOici un tres bon tuto pour comencer le PHP web:
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql

Bonne continuation,
Ben
0