PHP-MySQL: les données ne s'insèrent pas dans la base de données

Résolu/Fermé
Karlos_scott Messages postés 52 Date d'inscription mercredi 23 décembre 2015 Statut Membre Dernière intervention 26 août 2017 - Modifié par jordane45 le 1/01/2016 à 05:04
Karlos_scott Messages postés 52 Date d'inscription mercredi 23 décembre 2015 Statut Membre Dernière intervention 26 août 2017 - 2 janv. 2016 à 13:39
Bonjour, j'ai réussi à intégrer MySQli dans mes codes PHP5, je ne reçoic plus le messages d'erreur pour MySQL obsolète. cependant, bien qu'il n'y a aucune erreur, mes données insérées via mon application ne s'insèrent pas dans ma base de données.
je vous mets ici le bout de mon code php:

<!-- Ici commence mon code php --> 
   <?php 
 //Connexion à ma base de données 
     $hote = 'localhost'; 
  $utilisateur = 'root'; 
  $password = ''; 
  $nombdd = 'gestion'; // gestion est le nom de ma base de données 
  $bdd = mysqli_connect($hote, $utilisateur, $password, $nombdd);
  if (!$bdd) { 
  echo 'Erreur de connexion (' . mysqli_connect_errno() . ') ' . mysqli_connect_error();
             }     
    //récuperation des données
    
        $code_enseignant=$_POST['code_enseignant'];
        $code_departement=$_POST['code_departement'];
        $denomination_sujet=$_POST['denomination_sujet'];
  $remarques=$_POST['remarques'];
  
        //requête SQL pour insertion des données dans la base de données
  mysqli_query($bdd,"INSERT INTO lecteur(code_enseignant,code_departement,denomination_sujet,remarques) VALUES('$code_enseignant','$code_departement','$denomination_sujet','$remarques')");   
      
   
     mysqli_close($bdd);
     
  
 ?><!--Ici se termine mon code php-->


Ai-je oublié quelque chose???
Scott




EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.

2 réponses

Karlos_scott Messages postés 52 Date d'inscription mercredi 23 décembre 2015 Statut Membre Dernière intervention 26 août 2017 4
2 janv. 2016 à 13:38
Boujour et merci beaucoup Jordan45, ça marché, c'est fait. ça passe maintenant.
2
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
1 janv. 2016 à 05:14
Bonjour,

1 -
NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code


2 - Essayes d'ajouter un peu de debogage à ton code pour essayer de voir ce qui ne fonctionne pas.
Par exemple:


A - Créés toi un fichier de connexion à ta BDD que tu n'auras qu'à
appeler dans les pages où tu en as besoin plutôt que de copier/coller ce même code
dans toutes tes pages.

Nommons le (par exemple) : cnxBdd.php
<?php
//--------------------------------------------------------------------------//
//Fichier cnxBdd.php  => Connexion à la base de données 
//--------------------------------------------------------------------------//
  $hote = 'localhost'; 
  $utilisateur = 'root'; 
  $password = ''; 
  $nombdd = 'gestion'; // gestion est le nom de ma base de données 
  $bdd = mysqli_connect($hote, $utilisateur, $password, $nombdd);
  if (!$bdd) { 
   echo 'Erreur de connexion (' . mysqli_connect_errno() . ') ' . mysqli_connect_error();
  }     


B - Récupères les variables issues de POST ( ou de GET / SESSION / COOKIE ...)
proprement à l'aide d'un ISSET et de l'écriture ternaire


 // ecriture ternaire (remplace les IF)
 $variable = condition ? valeur si vraie : valeur si faux ;
 


 // par exemple :
 $code_enseignant = isset($_POST['code_enseignant']) ? $_POST['code_enseignant'] : NULL;


Ce qui donne :
<?php 
//connexion à la BDD
require_once "cnxBdd.php";

//récuperation des données
$code_enseignant = isset($_POST['code_enseignant']) ? $_POST['code_enseignant'] : NULL;
$code_departement = isset($_POST['code_departement']) ? $_POST['code_departement'] : NULL;
$denomination_sujet = isset($_POST['denomination_sujet']) ? $_POST['denomination_sujet'] : NULL;
$remarques = isset($_POST['remarques']) ? $_POST['remarques'] : NULL;


//requête SQL pour insertion des données dans la base de données
//je sépare la requête de son exécution pour pouvoir en faire un echo
// et ainsi voir si elle est correctement écrite :
$sql = "INSERT INTO lecteur(code_enseignant,code_departement,denomination_sujet,remarques) VALUES('$code_enseignant','$code_departement','$denomination_sujet','$remarques')";

//j'execute la requete et ajoute un debug.
mysqli_query($bdd,$sql)  or die("error ! ".mysqli_error($bdd). "<br> La requete est :<br>".$sql);   
  

mysqli_close($bdd);

?>
0
Karlos_scott Messages postés 52 Date d'inscription mercredi 23 décembre 2015 Statut Membre Dernière intervention 26 août 2017 4
1 janv. 2016 à 05:51
Bonjour, je trouve cette façon logique. j'essaye de l'adapter, comme je verrai le comportement.
0
Karlos_scott Messages postés 52 Date d'inscription mercredi 23 décembre 2015 Statut Membre Dernière intervention 26 août 2017 4
2 janv. 2016 à 13:39
Grand merci Jordan45, ça passe maintenant.
0