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 :

Call to a member function prepare() on a non-object [PDO]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Call to a member function prepare() on a non-object
    Bonjour,

    C'est la première fois que j'utilise PDO, et je suis un peu perdue. J'ai lu les pages suivantes: http://php.developpez.com/faq/?page=pdo#pdo-query et http://m-gut.developpez.com/tutoriel...-confirmation/ . En effet, je veux faire un mail de confirmation d'inscription à une newsletter.
    Alors voilà les étapes que j'ai faites:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
     
    foreach(get_loaded_extensions() as $extension)
    {
        if(strpos(strtolower($extension), 'pdo') !== FALSE)
        {
            echo $extension.'<br/>';
        }
    }
     
    ?>
    Et quand j'affiche la page, ça me dit que PDO, pdo_sqlite, pdo_mysql sont installés.

    Première question: Dois je faire autre chose pour mettre en route PDO?

    Car quand je mets ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    // Insertion de la clé dans la base de données (à adapter en INSERT si besoin)
    $stmt = $dbh->prepare("UPDATE membres SET cle=:cle WHERE login like :login");
    $stmt->bindParam(':cle', $cle);
    $stmt->bindParam(':login', $login);
    $stmt->execute();
    (je ne vous mets pas tout le code, c'est celui qui se trouve dans le 2ème lien). Je reçois ce message: "Fatal error: Call to a member function prepare() on a non-object in /data/12/1/89/48/1089863/user/1136057/htdocs/carotest/confirm.php on line 26"

    Je suis un peu perdue, je cherche partout et je ne comprend pas comment faire fonctionner PDO....

    Auriez-vous de bons conseils?

    Merci par avance!

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Première question: Dois je faire autre chose pour mettre en route PDO?
    Le code que tu nous montres ne met pas en route PDO, il t'affiche juste les extensions PDO présentes sur ton serveur.

    Pour ton erreur, elle vient de l'étape de connexion, que tu nous a pas montré.
    $dbh = ......
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Invité
    Invité(e)
    Par défaut mot de passe
    Voilà le code avec lequel je me connecte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    // Connexion à la base de données
    $db = new PDO('mysql:host=xxxx;dbname=xxxx', 'xxxxx', 'xxxx');
    Dernière modification par sabotage ; 12/07/2009 à 22h20.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    $db ou $dbh, il faut choisir.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Invité
    Invité(e)
    Par défaut
    Ah! j'avais envoyé une réponse, mais ça n'a pas marché.
    Effectivement, le choix s'impose! je n'avais pas remarqué ça, quand on a la tête dans le guidon....
    Merci bien! je continue mes investigations, sachant que j'aurai encore certainement besoin de vous!

    A très bientôt!!!!!!

  6. #6
    Invité
    Invité(e)
    Par défaut
    Et bien finalement le tutoriel dont je parlais en haut, et impeccable! Tellement clair que j'ai réussi à le mettre en place quasiment d'un seul coup.. Ah!

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

Discussions similaires

  1. [MySQL] Call to a member function prepare() on a non-object
    Par karamaster dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 06/03/2014, 16h46
  2. Réponses: 1
    Dernier message: 12/02/2014, 23h49
  3. Réponses: 16
    Dernier message: 23/05/2013, 10h35
  4. [PDO] Fatal error: Call to a member function prepare() on a non-object
    Par nu_tango dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 20/12/2012, 08h33
  5. Call to a member function prepare() on a non-object
    Par KenConnor dans le forum Langage
    Réponses: 8
    Dernier message: 20/01/2011, 22h11

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