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 :

PDO Insert [PDO]


Sujet :

PHP & Base de données

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 29
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 2
    Points : 1
    Points
    1
    Par défaut PDO Insert
    Bonjour à tous,
    Alors voila j'ai un petit problème, je tente d'insérer des données dans ma base à partir d'un formulaire et j'ai 2 erreurs.
    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':Identifiant, :pass, :email, :localisation, :grade)' at line 1' in C:\wamp\www\test\register.php on line 132 et
    PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':Identifiant, :pass, :email, :localisation, :grade)' at line 1 in C:\wamp\www\test\register.php on line 132
    et voila mon code


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     $query=$bdd->query('INSERT INTO personne (Identifiant, MotDePasse, email, localisation, grade) VALUES (:Identifiant, :pass, :email, :localisation, :grade)');
        $query->bindValue(':Identifiant', $Identifiant, PDO::PARAM_STR);
        $query->bindValue(':pass', $pass, PDO::PARAM_INT);
        $query->bindValue(':email', $email, PDO::PARAM_STR);
        $query->bindValue(':localisation', $localisation, PDO::PARAM_STR);
        $query->bindValue(':grade', $grade, PDO::PARAM_STR);
        $query->bindValue(':temps', $temps, PDO::PARAM_INT);
            $query->execute();
        //Et on définit les variables de sessions
            $_SESSION['Identifiant'] = $Identifiant;
            $_SESSION['id'] = $bdd->lastInsertId(); ;
            $_SESSION['level'] = 2;
            $query->CloseCursor();
    Merci d'avance pour l'aide

  2. #2
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Ta première ligne est fausse, pour les requêtes préparées avec PDO il faut que tu utilise prepare :

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
     $query=$bdd->prepare('INSERT INTO personne (Identifiant, MotDePasse, email, localisation, grade) VALUES (:Identifiant, :pass, :email, :localisation, :grade)');
    Pensez à regarder nos cours et tutoriels PHP ainsi que notre FAQ PHP avant de poser votre question!
    Un message vous a aidé, n'oubliez pas le

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    ... et le nombre de valeurs passées à la requête doit correspondre au nombre de paramètres attendus par la requête...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  4. #4
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 29
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci bien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] PDO insert Impossible
    Par moudjahidine dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 28/07/2013, 12h33
  2. [PDO] PDO Insertion multiple
    Par babacar_84 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 24/06/2012, 11h15
  3. [PDO] PDO Insert Into
    Par pendoRa dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 19/01/2012, 16h01
  4. [PDO] PDO insert problème
    Par fozzeuh dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 25/07/2011, 10h30
  5. [PDO] INSERT qui se comporte étrangement.. des idées SVP ?
    Par titoumimi dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 27/09/2006, 09h31

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