Probleme connexion avec PDO
Bonjour tout le monde,
Dans le cadre de mon stage je dois utiliser le couple PHP/MySQL, je me forme dessus à mesure puisque je ne connais pas très bien.
Actuellement j'ai un problème de connexion à ma base de données via PHP et la classe PDO.
Je travaille sur WampServeur(donc PDO installé d'office), PHP 5.2, et MySQL 5.0
Dans le but de tester des requêtes j'ai créé une base de données via PHPmyAdmin nommé "addm"
Actuellement mon application comporte 2 classes
Une classe utilisateur et une classe AccesBD
Voici le code de la classe AccesBD qui sert à initialiser la connexion à la BD. (elle renvoit ensuite une référence vers l'objet permettant d'effectuer des opérations dessus)
Code:
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
| <?php
class AccesBD
{
private $user; // login de la BD
private $mdp; // mot de passe de connexion à la BD
private $url; // adresse de connexion
private $etat; // objet permettant les opérations sur la BD, de la classe PDO
public function __construct()
{
$this->user = 'root';
$this->mdp = '';
$this->url = 'mysql:host=localhost;dbname=addm';
}
/**Lance la connexion à la base de données et retourne l'objet
permettant d'effectuer des opérations sur la BD */
public function connexion()
{
try
{
$this->etat = new PDO($url,$user,$pass,array(PDO::ATTR_PERSISTENT => false));
return $this->etat;
}
catch (PDOException $e)
{
die("Erreur ! : " . $e->getMessage());
}
}
/** Ferme la connexion */
public function deconnexion()
{
$this->etat = NULL;
}
}
?> |
Je précise aussi que j'ai récupéré la syntaxe de connexion sur la documentation officielle.
L'appel de connexion() se fait dans une méthode de la classe Utilisateur
que voici
Code:
1 2 3 4 5 6
|
public function rechercheUtilisateurParLogin($login)
{
$this->obd = new AccesBD();
$base_donnees = $this->obd->connexion();
} |
Au final l'exécution déclenche l'exception suivante :
Code:
Erreur ! : invalid data source name
Voilà j'ai essayé plusieurs choses comme vérifier le nom de la BD, le fonctionnement du serveur (il marche j'arrive à obtenir le status via la console MySQL) mais rien n'y fait ..
Merci d'avance pour vos suggestions