Infernus32
Messages postés6Date d'inscriptionjeudi 22 mars 2007StatutMembreDernière intervention 1 mai 2008
-
1 mai 2008 à 14:48
Infernus32
Messages postés6Date d'inscriptionjeudi 22 mars 2007StatutMembreDernière intervention 1 mai 2008
-
1 mai 2008 à 19:09
Bonjour,
Je suis en train de développer un CMS (Content Manager System) en PHP5, le tout est évidement orienté objet.
Mais n'étant qu'à mes débuts en POO, j'ai quelques problèmes que je n'arrive pas à résoudre.
Alors voilà, j'ai une classe que j'ai nommée DbConnector qui permet de se connecter au serveur MySQL et d'envoyer des requêtes dont voici la partie interressente :
public function __construct() {
$this->link = mysql_connect(DB_HOST, DB_USERNAME, DB_PASSWORD, FALSE)
or die(' Connexion au serveur MySQL impossible !
Une erreur est survenue lors de la connexion à la base de données, veuillez rafraîchir la page afin de réessayer.
');
mysql_select_db(DB_NAME) or die('Base de données introuvable !');
register_shutdown_function(array(&$this, 'close'));
}
public function query($query) {
$this->globalQueriesCounter++;
J'ai aussi une autre classe Article qui permet de gérer des articles.
Donc pour récupérer un article contenu dans ma base de données, j'ai une fonction du genre :
public function getArticle() {
$db = new DbConnector();
$result = $db->query(
'SELECT * FROM articles '.
'WHERE category=\''.$this->category.'\' AND sub_category=\''.$this->subCategory.'\''
);
Le problème se situe dans ma classe DbConnector lorqu'il faut compter le nombre de requêtes et le temps qu'elles ont mis à s'éxécuter, en effet, lorsque je fais $this->globalQueriesCounter++; j'incrémente bien mon compteur mais seulement pour mon instance créée avec $db = new DbConnector(); donc lorsque j'affiche mon compteur à la fin du script je n'ai pas le nombre total de requêtes mais seuelement celui de mon instance.
Donc je voudrais savoir comment faire mon remédier à ce problème. Je suis ouvert à toute proposition même s'il s'il faut recommencer mon CMS à zéro car il n'est pour l'instant pas encore très important.
De plus, si vous connaissez un CMS bien codé en PHP5 et assez petit pour que je puisse le comprendre facilement, n'hésister à m'en faire part.
Merci beaucoup
Teclis01
Messages postés1423Date d'inscriptionmardi 14 décembre 2004StatutMembreDernière intervention29 décembre 20124 1 mai 2008 à 18:20
Je ne t'en conseille aucun, je te conseille une abstraction de de DB. qu'on n'ai pas a changer bcp de choses pour que ça marche avec mssql, postgresql, ...
Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
Les geeks n'ont pas une case en moins ils commencent juste à compter à partir de zéro
Infernus32
Messages postés6Date d'inscriptionjeudi 22 mars 2007StatutMembreDernière intervention 1 mai 2008 1 mai 2008 à 17:55
Merci beaucoup, ça marche nickel.
Je pensais que tout ce qui était "static" générait une erreur de niveau E_STRICT mais apparemment cela ne concerne que les méthodes statiques et pas les propriétés.
Sinon, pourquoi dis tu que MySQL n'est pas top pour un CMS, j'ai déjà testé Joomla, Drupal, Haricow... ils utilisent tous MySQL. Quel SGBD me conseille tu d'autre ?