Bonjour à tous. Après un long moment d'absence me voici à nouveau sur ce forum. Donc sincères salutations à tous les admins et modérateurs.

Un petit casse-tête pour vous très chers amis

J'explique.

Je (re-)programme un framework et je me trouve dans une situation un peu bizarre.

J'ai une table MySQL que je vais appeler pour l'occasion... table
J'ai programmé un FrontController qui appelle un modèle et une vue.
Si je fais dans le fichier index.php le code suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
$sql="SELECT * FROM table";
$oReq=$oLink->query($sql);
$row=$oReq->fetchAll(PDO::FETCH_ASSOC);
print_r($row);
Cela fonctionne. Donc mon code, et ma requête SQL, sont valides.

Maintenant si je place le code PDO dans le modèle et le print_r dans la vue, ça fonctionne également. Bien-sûr, je fais dans le fichier index.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
require_once('models/fichier.php');
require_once('vue/fichier.php');
Maintenant, si je passe par le FrontController (FC), il me met les message d'erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Fatal error: Call to a member function query() on a non-object in  C:\xampp\htdocs\cdtda12\models\ModelAccueil.php on line x
Alors je teste le FC en écrivant dans le modèle et dans la vue et ça fonctionne correctement. Donc mon FC est bon également.

Alors ??? PHP bogue ? Non je plaisante... je crois trop en ce langage pour penser une fraction de seconde qu'il bug
Quelqu'un aurait-il une réponse à ce qui se passe ?

Merci d'avance pour moi et tous ceux qui en retireront quelque chose.