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 :

Probleme d'appel de fonction


Sujet :

Zend Framework PHP

  1. #1
    Membre averti Avatar de max44410
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 426
    Points : 301
    Points
    301
    Par défaut Probleme d'appel de fonction
    Bonjour,

    Voila j'ai suivi le tuto (traduit en francais) de developpez.com, concernant ZEND.
    Je voulais modifier quelques trucs a ma sauce. En fait ce que je voulais faire c'est garder une trace de toutes les actions qui sont realiser sur la base de donnees.

    j'ai repris les meme nom de classe que le tuto, donc pour ceux qui l'ont suivi ils vont pouvoir se retrouver rapidement dans mon code.

    voila le IndexController.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
     
    class IndexController extends Zend_Controller_Action 
    {
        function indexAction()
        {
    		$this->view->title = "Mes albums";
            //echo "<p>dans IndexController::indexAction()</p>";
    		$album = new Album(); // on creer l'objet
    // Attention j'ai remplacé fetchAll() par my_fetchAll(), methode de Album
    		$this->view->albums = $album->my_fetchAll(); // affect le tableau d'albums dans une variable de la vue
        }
    voici Album.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
    <?php
    include "XmlManager.php";
     
    class Album extends Zend_Db_Table
    {
        protected $_name = 'album';
    	private $xmlLog = null;
    	/*
    	Pour indiquer à Zend_Db_Table le nom de la table qu'il devra gérer, nous devons remplir la propriété
    	protected $_name avec le nom de la table.
    	Zend_Db_Table suppose que votre table a une clef primaire appelée "id" qui est auto incrementée.
    	*/
    	public function __construct(){
    		$xmlLog = new XmlManager(time(), 'Open XML Log From Album object', 'log.xml');
    		}
     
    	public function my_fetchAll(){
    		// add entry in XML logFile
    		return Zend_Db_Table::fetchAll();
    // j'ai essayé : return parent::fetchAll(); ca fonctionne pas non plus
    		}
    }
    et voila XmlManager.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
    <?php
    class XmlManager {
     
    	private $document = null;
    	private $nb_ligne;
    	private $time_creation;
    	private $comment;
    	private $file_name;
     
    	public function __construct ($time='', $comment='', $file_name=''){
    		$this->nb_ligne = 0;
    		$this->time_creation = $time;
    		$this->comment = '';
    		$this->file_name = $file_name;
    		$this->document =  new DomDocument($file_name);
    		$this->saveFile();
    		}
     
    	public function addEntry($time, $comment){
    		//ajoute un message à l'arbre XML
    		}
     
    	public function saveFile() {
    		$this->document->save($this->file_name);
    		}
    }
    Lorsque je veux afficher la page d'index j'ai l'erreur suivante :

    Fatal error: Call to a member function select() on a non-object in C:\Program Files\Apache Group\Apache2\htdocs\zf-tutorial\library\Zend\Db\Table\Abstract.php on line 1064
    Donc bah je suis bloqué ... je ne sais pas trop d'ou ca vient. surement des classes qui sont abstraites ou un truc comme ca ...
    Ca fait un moment que je n'ai pas toucher à la POO, enfin la vrai quoi ...
    Donc je veux bien avoir vos conseils.

    Merci

  2. #2
    Membre averti Avatar de max44410
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 426
    Points : 301
    Points
    301
    Par défaut
    Ok ... autant pour moi ...
    Comme j'ai defini un constructeur dans Album, il ne prenait plus celui de Zend_Db_Table par defaut. Donc il falait l'ajouter dans mon nouveau constructeur, ce qui donne :

    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
    <?php
    include "XmlManager.php";
     
    class Album extends Zend_Db_Table
    {
        protected $_name = 'album';
    	private $xmlLog = null;
    	/*
    	Pour indiquer à Zend_Db_Table le nom de la table qu'il devra gérer, nous devons remplir la propriété
    	protected $_name avec le nom de la table.
    	Zend_Db_Table suppose que votre table a une clef primaire appelée "id" qui est auto incrementée.
    	*/
    	public function __construct(){
    		parent::__construct();
    		$xmlLog = new XmlManager(time(), 'Open XML Log From Album object', 'log.xml');
    		}
     
    	public function my_fetchAll(){
    		// add entry in XML logFile
    		return parent::fetchAll();
    		}
    }
    Bon et bien merci quand meme

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme d'appel de fonction
    Par maximus35 dans le forum C
    Réponses: 12
    Dernier message: 01/02/2012, 11h13
  2. [XL-2003] Probleme sur appel de fonction auto depuis une cellule faisant une affectation
    Par comme de bien entendu dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/05/2011, 12h43
  3. Mystere probleme d'appel de fonction
    Par ze veritable farf dans le forum Qt
    Réponses: 3
    Dernier message: 15/09/2008, 20h56
  4. probleme d'appel de fonction!
    Par transistor49 dans le forum C++
    Réponses: 5
    Dernier message: 11/03/2005, 10h46
  5. Réponses: 8
    Dernier message: 13/08/2004, 12h32

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