Comment résoudre un problème de connection à la Base des données

Fermé
jb_lives Messages postés 3 Date d'inscription dimanche 17 novembre 2013 Statut Membre Dernière intervention 1 décembre 2013 - 1 déc. 2013 à 16:47
 Jblives - 2 déc. 2013 à 11:41
Bonjour,

Je cherche à savoir comment résoudre ce problème de connexion à la base des données:

<?php
class Db {

private $host = HOST;
private $name = DBNAME;
private $user =USER;
private $pass= PWD;

public $connexion;

function __construct($host=null,$name=null,$user=null,$pass=null){

if($host != null){

$this->host = $host;
$this->dbname = $dbname;
$this->user = $user;
$this->pass = $pass;
}

try{

$this->connexion = new PDO('mysql:host='.$this->host.';dbname='.$this->name,$this->user, $this->pass,array(
PDO::MYSQL_ATTR_INIT_COMMAND =>'SET NAMES UTF8',
PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING
));

}catch(PDOException $e){
echo "Erreur : Impossible de se connecter à la base de données.";
die();
}

}


public function query($sql,$data=array()){
$req = $this->connexion->prepare($sql);
$req->execute($data);

return $req->fetchAll(PDO::FETCH_OBJ);
}

public function tquery($sql,$data=array()){
$req = $this->connexion->prepare($sql);
$req->execute($data);

return $req->fetchAll(PDO::FETCH_ASSOC);
}

public function insert($sql,$data=array()){
$req = $this->connexion->prepare($sql);
$nbr = $req->execute($data);
return $nbr;
}

}

?>


Et le problème se présente sur cette ligne : PDO::MYSQL_ATTR_INIT_COMMAND =>'SET NAMES UTF8',



Fatal error: Undefined class constant 'MYSQL_ATTR_INIT_COMMAND' in C:\Program Files\EasyPHP5.2.10\www\blog\classes\Db.php on line 24
A voir également:

2 réponses

Utilisateur anonyme
2 déc. 2013 à 08:24
Bonjour

Le driver PDO de mysql est-il installé ?
Si tu essayes ce script chez Free par exemple, ils ne l'ont pas.
0
Merci bcp, Le Père, tu dois avoir raison, lorsque j'ai désintallé Easyphp que j'utilisais et installé une version supérieur contenant déjà des drivers PDO, directement mon code s'est exécuté. Vraiment merci pour tes éclairecissements.
0