Problème de connexion en PDO
Résolu
Lox917
-
Lox917 -
Lox917 -
Bonjour,
J'ai actuellement un script php ou j'ai créer une class database qui se connecte à une base de donnée MySQL.
Quand j’exécute le code suivant en entrant les information d'identification root à la base de donnée, cela se déroule correctement..
Quand je remplace l'utilisateur root par un utilisateur lambda qui dispose uniquement de tous les droits sur la base "info", le serveur me retourne l'erreur :
Je ne vois pas les droit qu'il manque à l'utilisateur mais étant donnée qu'avec l'utilisateur root sa fonctionne je dois avoir oublier quelle que chose.
J'ai donné les droit suivant à cette utilisateur lambda :
Avez vous une idée de comment résoudre mon problème?
J'ai actuellement un script php ou j'ai créer une class database qui se connecte à une base de donnée MySQL.
<?php class Database{ private $host = "localhost"; private $user = "root"; private $pass = ""; private $dbname = "info"; private $dbh; private $error; private $stmt; public function __construct(){ // Set DSN $dsn = 'mysql:host=' . $this->host . ';dbname=' . $this->dbname; // Set options $options = array( PDO::ATTR_PERSISTENT => true, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ); try{ $this->dbh = new PDO($dsn, $this->user, $this->pass, $options); } catch(PDOException $e){ $this->error = $e->getMessage(); } } public function query($query) { echo $query; $this->stmt = $this->dbh->prepare($query); }
Quand j’exécute le code suivant en entrant les information d'identification root à la base de donnée, cela se déroule correctement..
<?php include_once("database.php"); $database = new Database(); $database->query('SELECT `Description Pathologie` from allData WHERE `Name Keyword` LIKE "toux"'); $rows = $database->resultset(); foreach($rows as $element) { echo $element['Desc'] . '<br />'; }
Quand je remplace l'utilisateur root par un utilisateur lambda qui dispose uniquement de tous les droits sur la base "info", le serveur me retourne l'erreur :
Fatal error: Call to a member function prepare() on null in database.php
Je ne vois pas les droit qu'il manque à l'utilisateur mais étant donnée qu'avec l'utilisateur root sa fonctionne je dois avoir oublier quelle que chose.
J'ai donné les droit suivant à cette utilisateur lambda :
GRANT USAGE ON *.* TO 'info'@'localhost';
Avez vous une idée de comment résoudre mon problème?
A voir également:
- Problème de connexion en PDO
- Gmail connexion - Guide
- Connexion chromecast - Guide
- Gmail connexion autre compte - Guide
- D'où peut venir un problème de connexion internet sur un ordinateur ? - Guide
- Site inaccessible n'autorise pas la connexion - Guide
Je vois bien que mon utilisateur ne peut pas se connecter mais pourquoi ?
Wamp c'est pas terrible donc sa plante ... j'ai refais la même chose sur un serveur linux sa fonctionne.
Merci de ton aide au moins j'aurais appris que les erreur ne s'affiche pas toutes seul :)