Bonjour,
J'ai décidé de me lancer dans l'OO sur PHP et je bloque un point. Voici le contenu de mon fichier class.php :
Et voici le contenu de mon fichier test.php :
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
31
32
33
34
35
36
37
38 class db { function connect() { $connect = mysql_connect("localhost", "login", "password"); mysql_select_db("maDB"); return; } function disconnect() { mysql_close($connect); } } class constante_gen { public $valeurconstante; function constante($const) { $db = new db(); $db -> connect(); $select = "SELECT constante.nom AS nom, constante_c.contenu AS contenu FROM constante, constante_c, langue WHERE constante_c.constante = constante.id AND constante_c.langue = langue.id AND langue.id = '1' AND constante.nom = '".$const."'"; $query = mysql_query($select) or exit(mysql_error() . "<br/>$select"); $result = mysql_fetch_array($query); $valeurconstante = $result['contenu']; return; $db -> disconnect(); } }
Très simple comme exemple : il va juste rechercher une entrée dans la DB portant le nom "NOM" et doit afficher le contenu. Résultat quand je lance le fichier test.php sur mon serveur, une page blanche, sans erreur mais blanche tout de même :-)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 include("include/class.php"); $test = new constante_gen(); $test -> constante("NOM"); echo $test -> valeurconstante;
Si je modifie quelque peu ma classe constante_gen pour ne pas exécuter la requête SQL mais l'afficher, tout est OK mais il m'indique que la Query est vide hors si j'effectue exactement la même Query directement sur le serveur SQL, j'obtiens bien un résultat.
Ma classe db semble bien fonctionner car si je tape un password incorrect, mon fichier test.php affiche une erreur disant qu'il est impossible de se connecter.
Donc en gros, pourquoi cette requête ne m'affiche rien ?
Merci :-)
Partager