Probleme dinsertion php/mysql

Résolu
ayoubbrs -  
Super_carotte Messages postés 1420 Date d'inscription   Statut Membre Dernière intervention   -
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>

===========================
A voir également:

8 réponses

ayoubbrs Messages postés 17 Date d'inscription   Statut Membre Dernière intervention  
 
s il vous plait je suis débutant en php aide moi
0
ayoubbrs Messages postés 17 Date d'inscription   Statut Membre Dernière intervention  
 
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   Statut Membre Dernière intervention  
 
help
0
Super_carotte Messages postés 1420 Date d'inscription   Statut Membre Dernière intervention   127
 
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 1420 Date d'inscription   Statut Membre Dernière intervention   127
 
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 1420 Date d'inscription   Statut Membre Dernière intervention   127
 
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   Statut Membre Dernière intervention  
 
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 1420 Date d'inscription   Statut Membre Dernière intervention   127
 
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