IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Singleton connexion MySQL [PHP 5.2]


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 21
    Points : 14
    Points
    14
    Par défaut Singleton connexion MySQL
    Salut à tous

    Je rencontre un probleme de singleton en PHP. Je souhaite mettre en place un singleton pour une connexion à une base MySQL

    Le soucis c'est qu'il ne fonctionne pas !
    J'utilise WAMP SERVER 2 avec apache 2.2.8, PHP 5.2.6, MySQL 5.0.51

    Voici deux extrait de code :
    - Ma classe MySqlConnection : mon singleton
    - un extrait de mon fichier index qui est censé m'afficher le résultat d'une simple requête SQL.

    Si quelqu'un à une piste, je lui en serai reconnaissant.
    D'avance merci à tous de votre contribution.

    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
     
    /**
     * Classe MySqlConnection : singleton
     */
     
    class MySqlConnection {
        private static $instance;
     
    	private function __construct() {
    		self::$instance = mysql_connect('127.0.0.1', 'user', 'password')
    				or die ("Impossible de se connecter au serveur - ".mysql_error());
    		mysql_select_db('ma_base', self::$instance)
    			or die("Impossible de se connecter à la base ".mysql_error());
    	}
     
    	public static function getInstance() {
    		if(!isset(self::$instance) || self::$instance == null) {
    			self::$instance = new MySqlConnection();
    		}
    		return self::$instance; 
    	}
    }
    Puis mon fichier index qui me renvoie le texte suivant :
    <!-- fichier index -->
    Erreur :
    <!-- C'est tout !! -->
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    include_once('model/MySqlConnection.class.php');
    $connect = MySqlConnection::getInstance();
    $select = "SELECT nom FROM contact";
    $res = mysql_query($select, $connect)
             or die("Erreur : ".mysql_error());
    while ($row = mysql_fetch_array($res, MYSQL_BOTH)) {
            echo $row['nom'];
    }
    Voilà !! HELP !! ...

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu attribuais à $instance la valeur de ton instance de classe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public static function getInstance() {
    		if(!isset(self::$instance) || self::$instance == null) {
    			new MySqlConnection();
    		}
    		return self::$instance; 
    	}

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 21
    Points : 14
    Points
    14
    Par défaut
    Merci bcp, j'avais la tete dans le guidon...
    Bonne soirée !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JSP] erreur lors d'une connexion à mySQL
    Par Jovial dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 31/08/2004, 16h48
  2. Erreur connexion mysql
    Par bodbod dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/07/2004, 09h28
  3. Connexion mysql
    Par olive.m dans le forum SQL Procédural
    Réponses: 8
    Dernier message: 18/06/2004, 17h44
  4. [Connexion MySQL] Can't connect to MySQL server
    Par mat_dum dans le forum Outils
    Réponses: 12
    Dernier message: 17/07/2003, 07h49
  5. [Kylix] [cgi] pb déploiement appli avec connexion MySQL [rés
    Par Nepomiachty Olivier dans le forum EDI
    Réponses: 3
    Dernier message: 06/08/2002, 20h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo