Posez votre question Signaler

[PDO php/mysql ] aide , optimisation de code [Résolu]

chabacha109 170Messages postés 11 décembre 2010Date d'inscription 14 mai 2012Dernière intervention - Dernière réponse le 21 juin 2011 à 15:38
Bonjour a tous,
soit la class membre suivante :
class membre {   
 private $login ;   
 private $pays ;   
 private $pass;    


 public function  est_bloquer($log)   
    {   
           
$dbh = new PDO('mysql:host=localhost;dbname=monsite','root','');   
//la suite...   
    }   


public function connect($arg1,$arg2)   
 {   
$dbh = new PDO('mysql:host=localhost;dbname=monsite','root','');   
//la suite...   
}   

public function  __construct() {   
$dbh = new PDO('mysql:host=localhost;dbname=monsite','root','');   
//la suite...   
}   

} 

comment faire pour éviter cette ligne pour chaque methodes :
$dbh = new PDO('mysql:host=localhost;dbname=monsite','root','');   

autrement dit faire une connexion une seule fois de tout...
merci d'avance ^^
Lire la suite 

[PDO php/mysql ] aide , optimisation de code »

2 réponses
Réponse
+0
moins plus
Salut, il faut mettre ta variable $dbh en instance d'objet à la manière $login, et l'initialiser dans le constructeur:

class membre {   
 private $login ;   
 private $pays ;   
 private $pass;    
 private $dbh;  


 public function  est_bloquer($log)   
    {   
           
//la suite...   
    }   


public function connect($arg1,$arg2)   
 {   
//la suite...   
}   

public function  __construct() {   
$this->dbh = new PDO('mysql:host=localhost;dbname=monsite','root','');   
//la suite...   
}   

} 


Puis tu peux la récupérer ou tu veux dans l'objet sous cette forme $this->dbh.
chabacha109- 21 juin 2011 à 15:38
et oui je m'en doute...
^^ 1000 merci , a bientot
Ajouter un commentaire
Ce document intitulé « [PDO php/mysql ] aide , optimisation de code » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?