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 :

Problème avec prepare & execute [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 137
    Par défaut Problème avec prepare & execute
    Bonjour à tous je comprend pas pourquoi mon code ne fonctionne pas. Il ne me donne aucune erreur mais ne m inscrit rien non plus dans ma table.

    le code:
    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
     
    $req = $bdd->prepare('INSERT INTO utilisateur(Email, Motdepasse, Prenom, Nom, Telephone, Commune, Rue, NumeroRue, Etage, Appartement, Digicode, InformationsSupplementaires, DateInscription, Actif)
    	VALUES(:Email, :Motdepasse, :Prenom, :Nom, :Telephone, :Commune, :Rue, :NumeroRue, :Etage, :Appartement, :Digicode, :InformationsSupplementaires, :DateInscription, :Actif)');
    	$req->execute(array(
    		'Email' => $_POST['fm_emaila'],
    		'Motdepasse' => md5($_POST['fm_password1']),
    		'Prenom'=> $_POST['fm_prenom'],
    		'Nom' => $_POST['fm_nom'],
    		'Telephone' => $_POST['fm_telephone'],
    		'Commune' => $_POST['fm_commune'],
    		'Rue' => $_POST['fm_rue'],
    		'NumeroRue' => $_POST['fm_nrue'],
    		'Etage' => $_POST['fm_etage'],
    		'Appartement' => $_POST['fm_appartement'],
    		'Digicode' => $_POST['fm_digicode'],
    		'InformationsSupplementaires' => $_POST['fm_infossupp'],
    		'DateInscription' => date('Y-m-d G:i:s'),
    		'Actif' => 0));
    Voici, sachant que ce n'est que la partie d enregistrement dans la table les $_post vous l aurez deviné viennent d un formulaire. Comme mentionné plus aucune erreur et aucun enregistrement dans ma table alors que j ai essayé dans un document vierge même si les variable ssont vide il remplit avec un vide ou un null si elles existent pas.

    d'avance merci à ceux qui se pencheront sur mon problème.

  2. #2
    Invité
    Invité(e)
    Par défaut


    Si ma mémoire est bonne tu dois mettre les deux-points (:) devant les noms des clés de ton tableau.

  3. #3
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Citation Envoyé par torvalds17 Voir le message


    Si ma mémoire est bonne tu dois mettre les deux-points (:) devant les noms des clés de ton tableau.
    non c'est pas obligatoire, d'ailleurs on n'a même pas le faire


    @helkøwsky : t'as bien activé la gestion des erreurs pour PDO ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 137
    Par défaut j ai essayé
    comme ceci ?
    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
     
    $req = $bdd->prepare('INSERT INTO utilisateur(Email, Motdepasse, Prenom, Nom, Telephone, Commune, Rue, NumeroRue, Etage, Appartement, Digicode, InformationsSupplementaires, DateInscription, Actif)
    	VALUES(:Email, :Motdepasse, :Prenom, :Nom, :Telephone, :Commune, :Rue, :NumeroRue, :Etage, :Appartement, :Digicode, :InformationsSupplementaires, :DateInscription, :Actif)');
    	$req->execute(array(
    		':Email' => $_POST['fm_emaila'],
    		':Motdepasse' => md5($_POST['fm_password1']),
    		':Prenom'=> $_POST['fm_prenom'],
    		':Nom' => $_POST['fm_nom'],
    		':Telephone' => $_POST['fm_telephone'],
    		':Commune' => $_POST['fm_commune'],
    		':Rue' => $_POST['fm_rue'],
    		':NumeroRue' => $_POST['fm_nrue'],
    		':Etage' => $_POST['fm_etage'],
    		':Appartement' => $_POST['fm_appartement'],
    		':Digicode' => $_POST['fm_digicode'],
    		':InformationsSupplementaires' => $_POST['fm_infossupp'],
    		':DateInscription' => date('Y-m-d G:i:s'),
    		':Actif' => 0));
    ca ne fonctionne pas

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 137
    Par défaut
    stealth35,

    je suppose que oui puisqu'il me met les erreurs sur les autres pages. je suis sur que c est encore une connerie de guillemet ou faute de frappe ^^

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Citation Envoyé par helkøwsky Voir le message
    stealth35,

    je suppose que oui puisqu'il me met les erreurs sur les autres pages. je suis sur que c est encore une connerie de guillemet ou faute de frappe ^^
    si tu l'avis mis il t’afficherai une erreur, t'as vérifié ton error_reporting ?

  7. #7
    Membre extrêmement actif
    Avatar de kdmbella
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2010
    Messages
    799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2010
    Messages : 799
    Par défaut
    essaye de remplacer dans le values le nom des paramèttre par des "?" et utilise un tableau classique pour passer les paramètres a ton execute().
    aussi active la gestion des erreurs pdo enutilisant ceci

    setAttribute()
    -PDO::ERRMODE_EXCEPTION

    essaye et tu nous donnes les résultats
    "L'humanité se divise en trois catégories : ceux qui ne peuvent pas bouger, ceux qui peuvent bouger, et ceux qui bougent."
    - Benjamin Franklin

    De l'aide en Javascript , consultez la FAQ JS.

    De l'aide sur le FrameWork JS DHTMLX : posez vos questions sur le forum des Bibliothèques & Frameworks JS.

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2009
    Messages : 137
    Par défaut
    @kdmbella:

    En retapant le code pour utiliser une tableau classique j ai remarqué qu un nom de ma table était différent, et oui quand on a pas de tête on a du temps ... merci donc.

    @stealth35:

    merci aussi cependant je sais pas ou trouver le rapport d'erreur php, tout ce que j ai trouvé c'est php_error.txt dans C:\wamp\logs.

    En m'excusant de vous avoir fait perdre du temps.

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

Discussions similaires

  1. Problème avec plan d'execution
    Par bibi92 dans le forum SQL
    Réponses: 4
    Dernier message: 18/09/2008, 10h09
  2. Problème avec un jar executable
    Par haludo dans le forum NetBeans
    Réponses: 5
    Dernier message: 23/10/2006, 12h01
  3. Problème avec un jar executable
    Par haludo dans le forum NetBeans
    Réponses: 5
    Dernier message: 12/10/2006, 19h51
  4. Problème avec temps d'execution
    Par RR instinct dans le forum Installation
    Réponses: 7
    Dernier message: 22/08/2006, 09h13
  5. Problème avec le programme executable
    Par GreyDragon dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 01/10/2005, 13h43

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