Page 1 sur 1

Création d'objet et requêtes SQL

Posté : 30 mai 2007, 12:29
par Shirow
Bonjour tous le monde :)
Voila, je vient de commencer la programation Objet en php, mais j'ai un petit problème avec mes requêtes SQL.

J'ai donc fait une class pour la gestion des requetes, les connexions, etc...
Cependant, j'ai un problème pour la création d'une méthode pour récuperer les informations de la base de données, et ainsi faire la création d'un objet.

En pratique, sa serait du type :

Code : Tout sélectionner

$tab = array(); while(list($var1,$var2) = mysql_fetch_array($sql)) { $class = new class(); $class->attribut1 = $var1; $class->attribut2 = $var2; $tab[] = $class; }
Voila, cependant, en utilisant une classe SQL je ne vois vraiment pas comment faire pour réaliser ça.

Donc voiçi mes deux class que j'utilise pour me connecter à une base de donnée :

Code : Tout sélectionner

<?php abstract class SQL{ private $connexion; public $compteur = 0; function __construct($host,$user,$pass,$dbname){ $this->connect($host,$user,$pass); $this->select_db($dbname); } function __destruct() { $this->disconnect(); } public abstract function connect($host,$login,$pass); public abstract function select_db($db); public abstract function disconnect(); } class mysql extends SQL { public function __construct($host,$user,$pass,$dbname) { parent::__construct($host,$user,$pass,$dbname); } /*Fonction pour se connecter, déconnecter de la base de donnée*/ public function connect($host,$login,$pass) { $this->connexion = @mysql_connect($host,$login,$pass); if(!$this->connexion) echo'Erreur de connexion'; } /*Fonction pour sélectionner une base de donnée*/ public function select_db($bdd) { $select_db = @mysql_select_db($bdd,$this->connexion); if(!$select_db) echo'Erreur de connexion'; } /*Déconnexion à la base de donnée */ public function disconnect() { mysql_close() or die("Connexion impossible à fermer"); echo'Fermeture de la connexion'; } } ?>
Voila, merci d'avance :)

Posté : 30 mai 2007, 13:45
par titerm
Ta question ressemble curieusement a une autre posé récemment.. Meme problème, meme ennoncé, et meme erreurs... Vous avez tous le meme devoir ? :)


Lit les réponses faites a cette question

Posté : 30 mai 2007, 18:20
par Shirow
Non pas du tous :)
Mais j'avais déjà vu ce post, ce qui m'a permis de trouver la solution à un de mes problèmes :)

Mais moi, c'est pour faire ma classe SQL qui me pose des problèmes, car je ne vois pas comment faire la méthode qui me feras la boucle while pour à chaque fois instancier ma class :)

PS : Merci à l'intéret que tu as porté pour mon problème :)

Posté : 05 juin 2007, 03:17
par elvex
Quelques questions :
Pourquoi utiliser un tableau d'objets ? Pourquoi pas un objet contenant un tableau ?
Et pourquoi pas utiliser mysqli, qui te propose directement un accès POO à tes résultats ?

Cordialement,
elvex