nagrom_om
Messages postés163Date d'inscriptionlundi 20 décembre 2004StatutMembreDernière intervention 1 novembre 2006
-
30 sept. 2006 à 19:49
nagrom_om
Messages postés163Date d'inscriptionlundi 20 décembre 2004StatutMembreDernière intervention 1 novembre 2006
-
1 oct. 2006 à 16:33
Bonjour,
J ai recupéré une classe d abstracation pour MySql cela fonctionne. Elle s instencie de cette facon :
try {
$db = dbInterface::GetInstance('mysql', 'mysql');
} catch ( Exception $e ) {
die ( $e->getmessage() );
}
}
En faisant ainsi le naviguateur ne m affiche plus rien... :(
J'ai egalement essayer de creer un attribut $db dans la classe Utilisateur comme ecrit en commentaire mais ca ne marche pas non plus.
QQ'un peut il m aider merci ;)
nagrom_om
Messages postés163Date d'inscriptionlundi 20 décembre 2004StatutMembreDernière intervention 1 novembre 2006 30 sept. 2006 à 20:23
Re,
qd je créé un attribut db dans la classe Utilisateur il m affiche comme erreur :
Fatal error: Class 'dbInterface' not found in D:\xampp\xampp\htdocs\class\utilisateur.php on line 26
Besoin d informations complementaires ?
Merci
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 1 oct. 2006 à 00:19
hello,
tu essayes de faire quoi ? Utilise la classe d'abstraction dans une de tes classes, c'est ça ? (ce serait pas la mienne, par hasard, au passage...? Me rappelle quelquechose c'te classe lol).
Ce que je veux faire c'est utiliser cette couche d abstraction afin de pouvoir ecrir des methodes dans la classe Utilisateur du genre :
// Fonction de remplissage total
function select(){
$requete "SELECT `login`,`pwd`, `nom`,`prenom` FROM `utilisateur` WHERE `login` "$this->login"";
$this->db->query($requete);
$data = $this->db->fetch_row($query);
$this->mdp = $data[1];
$this->nom = $data[2];
$this->prenom = $data[3];
}
function insert($login, $mdp, $nom, $prenom){
$requete = "INSERT INTO `utilisateur` (`nom`,`prenom`,`login`,`pwd`) VALUES("$nom","$prenom","$login","$mdp")";
$this->db->query($requete);
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 1 oct. 2006 à 09:29
ah, le GetInstance m'a trompé ;-)
Etends, plutôt, la classe DB dans la classe que tu veux développer.
Quoi que, avec le singleton, ça peut être problématique...
Sinon, oui, tu peux faire ce que tu as fait : passer l'objet DB en paramètre, et l'utiliser comme une propriété de ta classe.
par contre... : $db '' ? null à la limite, et encore...cet objet est requis, pour que ta classe fonctionne. Donc, il ne doit pas être facultatif dans la construction de ta 2de classe.
Vous n’avez pas trouvé la réponse que vous recherchez ?
nagrom_om
Messages postés163Date d'inscriptionlundi 20 décembre 2004StatutMembreDernière intervention 1 novembre 2006 1 oct. 2006 à 16:29
Ok merci bien. Je vais donc continuer comme ca. Ca m'intrigue juste d avoir a instancier le singleton sur chacune de mes pages... Est il possible de le mettre en Session ? Cela est-il risqué ?
nagrom_om
Messages postés163Date d'inscriptionlundi 20 décembre 2004StatutMembreDernière intervention 1 novembre 2006 1 oct. 2006 à 16:33
J'ai oublié qqch. En fait ce que je ne comprend pas c'est que je ne puisse pas faire
try {
$db = dbInterface::GetInstance('mysql', 'mysql');
} catch ( Exception $e ) {
die ( $e->getmessage() );
}
Dans le constructeur de mon objet en rajoutant :
@include ("../include/database.php");
@include ("../include/mysql.php");
au début ....