IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Zend Framework PHP Discussion :

Autoload et classe non trouvée


Sujet :

Zend Framework PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 63
    Par défaut Autoload et classe non trouvée
    Bonjour.
    Je debute avec ZF. Je dois programmer un portail web en utilisant le ZF. Ce doit etre une application modulaire. Mais ceci n'est pas le but de ma "visite". :s

    J'ai pour m'entrainer, programmer une petite application utilisant deux classes simples, afin de me familiariser avec le MVC et le ZF.

    L'architecture a été concue par le quickstart de ZF...

    Voici le code de mes classes:

    Donc ici, un modele: (Dans : animaux\application\models)
    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
    <?php
    require_once 'Zend/Loader/Autoloader.php';
    Zend_Loader_Autoloader::getInstance();
     
    class zend_models_Animaux{
     	private $_id_a;
     	private $_nom_a;
     
    function __construct($id, $nom){
    	 	$this->_id_a=$id;
    	 	$this->_nom_a=$nom;
    	 }
     
    	 public function setUp(){
     
    	 }
     
    	 function get_id(){
    	 	return $this->_id_a;
    	 }
     
    	 function get_nom(){
    	 	return $this->_nom_a;
    	 }
     
    	 public function selectAllAction(){
    	 	$configFile = "C:/Program Files/xampp/htdocs/testplugin/animaux/application/configs/dbConfig.ini";
    	 	$config = new Zend_Config_Ini($configFile,'dev');
    		$db = Zend_Db::factory($config->database);
    		$query = "SELECT * FROM animaux";
    		$result = $db->fetchAll($query);
     
    		return $result;
    	 }
     }
    ?>
    Ici mon controleur: (Dans : animaux\application\controllers)
    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
    <?php
     
    require_once 'Zend/Loader/Autoloader.php';
    Zend_Loader_Autoloader::getInstance();
     
    class zend_controllers_Cont{
     
    	 function __construct(){
     
    	 }
     
    	 function setUp(){
     
    	 }
     
    	 public function listeAllAction(){
    	 	$obj=new zend_models_Animaux(0,"");
    	 	$enreg=$obj->selectAllAction();
    	 	foreach($enreg as $animal){
    	 		$array[]=new zend_models_Animaux($animal[id_a], $animal[nom_a]);
    	 	}
    	 	return $array;
    	 }
     }
    ?>
    Et enfin ma vue: (Dans : animaux\application\views\scripts)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php 
    //require_once APPLICATION_PATH.'\controllers\contController.php';
    //require_once APPLICATION_PATH.'\models\animauxModels.php';
     
    require_once 'Zend/Loader/Autoloader.php';
    Zend_Loader_Autoloader::getInstance();
     
    $cont = new zend_controllers_Cont();
    $result=$cont->listeAllAction();
    foreach($result as $obj){
    	echo $obj->get_nom()."<br/>";
    }
    ?>
    Alors le probleme est:
    Fatal error: Class 'zend_controllers_cont' not found in C:\Program Files\xampp\htdocs\TestPlugin\animaux\application\views\scripts\animauxView.php on line 8
    Je precise que lorsque je decomente les deux lignes en haut de ma vue, et que je supprime les deux suivante ca marche... Je pense qu'il y a un bon nombre de convention que je n'ai pas respecté
    J'ai acheté le livre mais j'avoue etre un peu perdue

  2. #2
    Membre très actif Avatar de metagoto
    Profil pro
    Hobbyist programmateur
    Inscrit en
    Juin 2009
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Hobbyist programmateur

    Informations forums :
    Inscription : Juin 2009
    Messages : 646
    Par défaut
    Les classes commençant par "zend_" sont réservées par le framework ZF

    L'utilisateur (toi) est censé fournir un "namespace" personnalisé.
    Par exemple "class titou_Controller" en ayant pris soins de placer le répertoire "titou" dans l'include_path.

    Il y a des nouvelles fonctionnalité depuis la version 1.8 que je n'ai pas étudié concernant des pseudo namespaces pour l'autoloading.
    D'autres sauront te répondre directement.

    En attendant, regarde à nouveau la doc et plus particulièrement l'autoloading, car c'est ça ton prob

  3. #3
    Membre confirmé
    Inscrit en
    Novembre 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 63
    Par défaut
    Dak. J'avais essayer de pefixer mes classe.... Mais avec le meme resultat.

    Ou place tu ton repertoir Titou??

Discussions similaires

  1. [Assembly] Classe non trouvée
    Par zsoh dans le forum Framework .NET
    Réponses: 2
    Dernier message: 11/09/2006, 13h03
  2. Classe non trouvé TWebBrowser
    Par Aloneghost dans le forum Web & réseau
    Réponses: 1
    Dernier message: 18/04/2006, 20h51
  3. [ORACLE9i][XML]:ORA-29540: classe non trouvée
    Par anaon dans le forum Oracle
    Réponses: 8
    Dernier message: 15/11/2005, 20h02
  4. [Plugin] Classe non trouvée au runtime
    Par toto_toto dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 15/02/2005, 10h36
  5. [debutant][Classpath][Linux] Classe non trouvée
    Par oghma777 dans le forum Général Java
    Réponses: 5
    Dernier message: 15/10/2004, 21h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo