Bonjour,

Voila je rencontre un petit problème avec mon code.
je suis la formation PDO PHP et le TP sur la creation d'un blog en PDO sur le champitre connexion a la base de données je rencontre l'erreur suivant
"Use of undefined constant localhost - assumed 'localhost (this will throw an Error in a future version of PHP) in C:\cygwin64\home\blogPDO\app\Database.php on line 12'"
pourtant j'ai suivi exactement le tuto
voici le code:

namespace App;
use \PDO;

class Database
{
    private $db_name;
    private $db_user;
    private $db_pass;
    private $db_host;
    private $pdo;
    public function __construct($db_name,$db_user = 'root', $db_pass = '', $db_host = localhost) // c'est ici la ligne 12 où il ya apparamment un soucis
    {
        $this->db_name = $db_name;
        $this->db_user = $db_user;
        $this->db_pass = $db_pass;
        $this->db_host = $db_host;
    }

    private function getPDO(){
        if ($this->pdo === null){
            $pdo = new PDO('mysql:dbname=blogpdografikart;host=localhost','root','');
            $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            $this->pdo = $pdo;
        }
        return $this->pdo;
    }

    public function query($stmt, $class_name){
        $req = $this->getPDO()->query($stmt);
        return $req->fetchAll(PDO::FETCH_CLASS,$class_name);
    }
}

merci d'avance

2 réponses


Carouge10
Réponse acceptée

Bonjour,
Il manque les ' (simple quote) autour de localhost

Merci bcup que je suis bête moi!!!!!!!!!!!!!