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

Langage PHP Discussion :

Message d'erreur Class PHP


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Message d'erreur Class PHP
    Bonjour,

    J'ai besoin d'aide. Le message d'erreur suivant s'affiche lorsque je clique sur mon bouton valider l'inscription : Fatal error: Call to a member function prepare() on a non-object in /home/XXX/public_html/bdd.php on line 81

    La ligne 81 correspond a addPlayer

    Si une âme généreuse se sent d'humeur à venir en aide à un débutant

    Pour le code :

    Page inscription

    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
     require("bdd.php");
     
     $host ='localhost';
     $dbname = 'XX';
     $username = 'ZZ';
     $psw = '123';
     
     $bdd = new BaseDonnees($host, $dbname, $username, $psw);
     
     $bdd->start();
     
     if (isset($_POST['envoyer'])){
         $name = $_POST['name'];
         $passwrd = $_POST['passwrd'];
         $money = 500;
         if ($_POST['name'] != ""){
             if ($_POST['passwrd'] != ""){
                 $bdd->addPlayer($name, $passwrd, $money);
                 echo "Votre compte a bien été enregistré.";
                 $req->closeCursor();
             }
         }
     }
    Page bdd
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <?php
     
     class BaseDonnees {
         private $bdd;
         private $host;//='localhost';
         private $dbname;// = 'XX';
         private $username;// = 'ZZ';
         private $psw;// = '123';
     
         public function __construct($host, $dbname, $username, $psw){
             $this->host=$host;
             $this->dbname=$dbname;
             $this->username=$username;
             $this->psw=$psw;
         }
     // GETTERS
     // SETTERS
     
         public function start() {
             try {
                 $bdd = new PDO('mysql:host=localhost;dbname=XX;charset=utf8', 'XX', '123', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
             } catch (PDOException $e) {
                 echo 'Connexion échouée : ' . $e->getMessage();
             }
         }
     
         public function connexion($name, $passwrd){
             $requete = 'SELECT * FROM Player WHERE name = :t_name AND passwrd = :t_passwrd;';
             $req = $this->bdd->prepare($requete);
             $req->execute(array(':t_name' => $name, ':t_passwrd' => $passwrd));
             $result = $req->fetch();
     
         }
     
         public function addPlayer($name, $passwrd, $money){
             $bdd = "";
             $requete = 'INSERT INTO Player (id, name, passwrd, money) VALUES ("", ?, ?, ?)';
             $req = $this->bdd->prepare($requete);
             $req->execute(array($name, $passwrd, $money));
         }
    }

  2. #2
    Membre éclairé Avatar de Geoffrey74
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2007
    Messages
    515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2007
    Messages : 515
    Points : 760
    Points
    760
    Par défaut
    Salut,

    dans ta fonction start(), tu utilise $bdd au lieu de $this->bdd

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par Geoffrey74 Voir le message
    Salut,

    dans ta fonction start(), tu utilise $bdd au lieu de $this->bdd
    Merci cela a résolu le pb

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

Discussions similaires

  1. Message d'erreurs et php
    Par Yuki_Hime dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/05/2009, 15h18
  2. Message d'erreur "Class 'DB' not found"
    Par reman dans le forum Langage
    Réponses: 8
    Dernier message: 26/11/2008, 16h49
  3. Message d'erreur en PHP
    Par Lenezir dans le forum Langage
    Réponses: 2
    Dernier message: 02/11/2007, 09h36
  4. Message d'erreur page PHP et MySQL
    Par littlesnoopy dans le forum Installation
    Réponses: 6
    Dernier message: 19/01/2007, 10h25
  5. [Message d'erreur] Classe d'exception
    Par Pascal dans le forum Bases de données
    Réponses: 4
    Dernier message: 23/05/2004, 10h08

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