IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Erreur de code d'insertion des données à partir d'un formulaire


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Erreur de code d'insertion des données à partir d'un formulaire
    Bonjour,

    Je suis débutant PHP et je travaille sur un projet qui me passionne. J'ai élaboré le code PHP ci-dessous, en vue d'insérer les données à partir de mon formulaire dans la base de données Mysql, mais cela ne fonctionne pas. Merci de m'aider à retrouver où se trouve l'erreur?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <?php
    // on verifie la presence pour eviter des erreurs
    $nom=$_POST['nom'];
    $prenom=$_POST['prenom'];
    $profession=$_POST['profession'];
    $adresse=$_POST['adresse'];
    $email=$_POST['email'];
    $telephone=$_POST['telephone'];
    $sexe=$_POST['sexe'];
    $login=$_POST['login'];
    $password=$_POST['password'];
    //connexion a la bdd
     $lien=new PDO ('mysql:host=localhost; dbname=finder','root','');
      $lien -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    //creation de la requete sql
    $sql="INSERT INTO inscrit VALUES (Null, $nom, $prenom, $profession, $adresse, $email, $telephone, $sexe, $login, $password)";
    $reponse= $lien->exec($sql);
     var_dump($reponse);
     if(!$reponse)
    {
     echo('insertion impossible'); 
    }
    else  echo('ajout effectue'); 
    ?>
    Merci d'avance

  2. #2
    Membre extrêmement actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Points : 634
    Points
    634
    Par défaut
    Bonjour,


    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $sql="INSERT INTO inscrit 
    (nom, prenom, profession, adresse, email, telephone, sexe, login, password)
    VALUES 
    ($nom, $prenom, $profession, $adresse, $email, $telephone, $sexe, $login, $password)";

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Il faut utiliser une requête préparée.


  4. #4
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 628
    Points
    3 628
    Billets dans le blog
    8
    Par défaut
    Bonjour mignions :

    1) vérifie que tes variables POST sont bien définies et affectées comme tu l'espères :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo '<pre>';
    print_r($_POST);
    echo '</pre>';
    2) Consulte le petit billet de ma signature... Paragraphe 6 ! Pour faire des requêtes préparées. C'est indispensable.

  5. #5
    Membre extrêmement actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Points : 634
    Points
    634
    Par défaut
    Tu peux aussi sécuriser ta base de données

    mysqli_real_escape_string()

  6. #6
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Citation Envoyé par bonjourajax Voir le message
    Tu peux aussi sécuriser ta base de données

    mysqli_real_escape_string()
    Oui, mais non. mysqli_real_escape_string ne fonctionne que si on utilise l'API mysqli pour la connexion. Or dans le code que nous montre mignions, la connexion est faite par PDO.

  7. #7
    Membre extrêmement actif
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Points : 634
    Points
    634
    Par défaut
    Oui effectivement

Discussions similaires

  1. [AC-2007] erreur lors de l'insertion des données
    Par bamoussa dans le forum VBA Access
    Réponses: 1
    Dernier message: 25/10/2012, 23h09
  2. [MySQL] erreur lors de l'insertion des données
    Par bamoussa dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 11/06/2012, 02h02
  3. insertion des données saisies sur un formulaire
    Par vanesa dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 18/08/2008, 17h28
  4. [MySQL] Insérer des données à partir d'un formulaire
    Par super-java dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 15/10/2007, 11h01
  5. Insertion de données à partir d'un formulaire
    Par zeugzeug dans le forum Requêtes
    Réponses: 2
    Dernier message: 19/04/2007, 15h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo