Bonjour,

j'ai suivi le tuto "Créer un MVC" tout fonctionne, je m'en sors. Toutefois, j'ai une petite question. Dans mon layout (qui me sert donc de modèle pour la quasi totalité de monsite) j'ai besoin de faire appel a des classes pour afficher des compteurs (nombre de messages, nombre de tâches...).
Mais le soucis c'est que lorsque j'appelle un controller qui utilise ce layout mais que ce controller n'appelle pas la classe nécessaire pour afficher les compteurs, j'ai une erreur. Normal. Du coup, j'appelle par le "loadModel) des classes dont je ne me sers pas dans mon controller.

Et je n'aime pas trop ça. Auriez vous une meilleure solution à me conseiller?

Merci.

4 réponses


Arnaud Mcho Scott
Réponse acceptée

__autoload regarde la doc php et fait une recherche google pour en savoir plus

Bonjour,

Vérifier l'ordre du require,
Exemple: Ma class template requis la class blog, mais la class blog étant au niveau plus élever (ligne 5 (exemple)) Il me dit :
Class template () {} existe pas...
Pour y remédiez il faut mettre ceci :

<?php
// Ancien code 
// Ligne 1
// require('class/blog.php');
// require('class/template.php');
// par 
require('class/template.php');
require('class/blog.php');

Et par magie ma Class blog accepte ma Class template :)

Pour un auto_load :

function __autoload($classname) {
    $filename = "class/{$classname}.php";
    require($filename);
}

Cordialement :)

Oui j'ai tout de suite pensé aux autoload, mais après réflexion je me suis dit que je partais dans une mauvaise direction.
Bon, si vous pensez aussi à ça, c'est que j'avais pas tord ;)

Merci

Bonsoir, de rien :)