Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 04-08-2010 05:20:57

Jessica
Membre
Date d'inscription: 03-08-2010
Messages: 27

Fatal error: Undefined class constant

Bonsoir,

j'obtiens l'erreur suivante :
Fatal error: Undefined class constant 'MYSQL_DATETIME' in /var/www/MyZendwebapp1/application/controllers/ServeurController.php on line 75.
sachant que  'MYSQL_DATETIME' est une constante que j'ai défini dans la classe App_DateTime. J' ai appelé cette constante dans le controller 'ServeurController'.
Ce que je trouve étrange c'est que la classe 'App_DateTime' est reconnue car sinon j'aurais obtenu l'erreur 'Class not found'.
J'ai besoin de votre aide car je savais pas vraimant l'origine de cette erreur.
Merci pour vos réponses.

Hors ligne

 

#2 04-08-2010 08:35:12

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Fatal error: Undefined class constant

peut-on avoir la définition de la constante ??
et et l'appel à la classe et à la constante

A+JYT

Hors ligne

 

#3 04-08-2010 14:42:41

Jessica
Membre
Date d'inscription: 03-08-2010
Messages: 27

Re: Fatal error: Undefined class constant

Salut!!
la définition de la classe est la suivante:
<?php
class App_DateTime extends Zend_Date
{
    const MYSQL_DATE = "yyyy-MM-dd";
    const MYSQL_DATETIME = "yyyy-MM-dd HH:mm:ss";
}
cette classe est définie  dans le fichier: /home/rokia/ZendFramework/library/Zend/DateTime.php

je appelle la classe et la constante de la façon suivante:
[...]
$date = new Zend_Dojo_Form_Element_DateTextBox('date');
$val=new Zend_Validate_Date (DateTime:: MYSQL_DATETIME);
$date->addValidator($val);
[..]

Hors ligne

 

#4 04-08-2010 14:44:04

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: Fatal error: Undefined class constant

Et comme ça ?
$val=new Zend_Validate_Date (App_DateTime:: MYSQL_DATETIME);

Hors ligne

 

#5 04-08-2010 14:49:40

Jessica
Membre
Date d'inscription: 03-08-2010
Messages: 27

Re: Fatal error: Undefined class constant

nn plus ,lorsque je mets App_DateTime il me retourne l'erreur 'class not found'

Hors ligne

 

#6 04-08-2010 14:52:42

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: Fatal error: Undefined class constant

Donc soit cette classe n'est pas dans l'include path, soit l'autoload n'est pas activé et dans ce cas il faut inclure la classe avant.

Hors ligne

 

#7 04-08-2010 15:18:33

Jessica
Membre
Date d'inscription: 03-08-2010
Messages: 27

Re: Fatal error: Undefined class constant

j'ai dans mon fichier application.ini :
includePaths.library = APPLICATION_PATH "/../library"
J'ai mis le fichier DateTime.php dans le meme emplacement des classes de la bibliothèque zend.
Par contre comment savoir si l'autolaod est activé ou pas?
Merci.

Hors ligne

 

#8 04-08-2010 16:34:20

Jessica
Membre
Date d'inscription: 03-08-2010
Messages: 27

Re: Fatal error: Undefined class constant

Bon , je pense pas que c'est un problème de path car j'ai défini une autre classe et je l'ai mis dans le meme emplacement que mon fichier DateTime.php et il l'a reconnue.
je trouve normal qu'il ne trouve pas la class App_DateTime car j'ai pas défini un namespace qui va ajouter App_ lorsque je décalre mes classes.
J'ai essayé avec Zend_Loader mais toujours ça marche pas.Voilà le code que j'ai ajouté:
$loader=new Zend_Loader();
$loader->loadClass('DateTime','/home/rokia/ZendFramework/library/Zend');
Bref,je suis encore bloquée.

Hors ligne

 

#9 04-08-2010 16:47:16

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: Fatal error: Undefined class constant

Déjà pour bien faire tu ne devrais pas mettre de classe dans le dossier Zend.
A la limite fais un dossier au même niveau que tu appelles App où tu mettras tes classes.

Hors ligne

 

#10 04-08-2010 18:30:58

Jessica
Membre
Date d'inscription: 03-08-2010
Messages: 27

Re: Fatal error: Undefined class constant

Ok,merci
j'ai mis la classe dans le dossier library de mon application et j'ai utliser
loadclass ('App_DateTime','../library') et ça marche maintenant.
merci encore une fois.

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages