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 :

Problème de Singleton


Sujet :

Langage PHP

  1. #21
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Et ça, ça sert à quoi d'après toi ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Singleton::PDO($dsn, $user, $pwd);
    En interne, la classe Singleton va créer une nouvelle instance de PDO et te permettra par la suite d'accéder en garantissant l'unicité de l'instance.

  2. #22
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 49
    Par défaut
    Donc là ça commence à marcher

    J'ai fait comme ça :

    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
    <?php
     
     
    class Connection{
     
    	private static $instance = null;
     
    	private function __construct() {}
     
    	private function __clone() {}
     
    	static public function getInstance() 
    	{
    		if (!$self->instance) 
    		{
    			try
    			{
    				$self->instance = new PDO("mysql:host=localhost;dbname=db", "root", "");
     
    				$self->instance->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    			}
    			catch (Exception $e)
    			{
    				die('Erreur de connexion: ' . $e->getMessage());
    			}
    		}
     
    		return $self->instance;
    	}
    }
    J'ai ensuite une classe Member :

    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
    <?php
     
    include_once 'Connection.class.php';
     
    class Member {
     
    	public function __construct($id) {
     
    		$params = array(
    			'id' => $id,
    			);
     
    		$this->_database = Connection::getInstance();
    		$query = $this->_database->prepare('SELECT * FROM users WHERE id = ' . $id .'');
    		$query->execute($params);		
    		//etc...
    	}
    }
    Donc ça marche bien et ma classe member a bien un handle sur la connexion à la base de donnée.

    En ce qui concerne callStatic, j'ai lancé tombé, je n'arrive pas à le faire marcher même avec la version 5.3.5.

  3. #23
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Bref t'as rien écouté...

  4. #24
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 49
    Par défaut
    Non...j'ai pas compris, je cherche et j'essaye, c'est différent...

Discussions similaires

  1. [PHP 5.2] Problème de singleton abstrait
    Par alejandro dans le forum Langage
    Réponses: 8
    Dernier message: 09/10/2009, 17h35
  2. Problème de singleton
    Par Monstros Velu dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 19/02/2009, 15h27
  3. Réponses: 6
    Dernier message: 24/06/2007, 21h11
  4. Réponses: 4
    Dernier message: 16/06/2007, 14h36
  5. [VS2005] Problème pour faire un singleton
    Par mister3957 dans le forum Visual C++
    Réponses: 2
    Dernier message: 01/02/2006, 08h55

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