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)
Je précise aussi que j'ai récupéré la syntaxe de connexion sur la documentation officielle.
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 <?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; } } ?>
L'appel de connexion() se fait dans une méthode de la classe Utilisateur
que voici
Au final l'exécution déclenche l'exception suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public function rechercheUtilisateurParLogin($login) { $this->obd = new AccesBD(); $base_donnees = $this->obd->connexion(); }
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 ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part Erreur ! : invalid data source name
Merci d'avance pour vos suggestions
Partager