Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework
Zend Framework Forum d'entraide sur la programmation PHP avec Zend Framework. Avant de poster -> FAQ ZF, Cours ZF
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/06/2011, 14h19   #1
Membre du Club
 
Avatar de florianjoy54
 
Inscription : octobre 2009
Messages : 154
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 154
Points : 56
Points : 56
Par défaut Probleme de configuration php.ini

Bonjour,

comme beaucoup avant moi j'ai un souci avec la configuration pour utiliser le framework zend.

j'ai télécharger le dernier package, j'ai mis le repertoire library dans C:\wamp\www

puis j'ai modifié dans php.ini l'include path :
; Windows: "\path1;\path2"
;include_path = ".;c:\wamp\www\library\"

cependant quand je test le code suivant j'ai des erreurs
Code :
1
2
3
4
 
require 'Zend/Date.php';
$date = new Zend/Date.php;
echo $date;
Code :
1
2
3
4
 
Warning: require(Zend/Date.php) [function.require]: failed to open stream: No such file or directory in C:\wamp\www\zf1\test.php on line 5
 
Fatal error: require() [function.require]: Failed opening required 'Zend/Date.php' (include_path='.;C:\php5\pear') in C:\wamp\www\zf1\test.php on line 5
cependant quand je fais get_include_path();
le chemin n'est pas le meme que dans mon php.ini

pouvez vous m'aider ?

cordialement
__________________
Force et Honneur, Courage et Culture, sans peur ni reproche
florianjoy54 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 16h43   #2
Membre expérimenté
 
Avatar de amoiraud
 
Homme Adrien
Développeur Web
Inscription : octobre 2006
Messages : 405
Détails du profil
Informations personnelles :
Nom : Homme Adrien
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2006
Messages : 405
Points : 531
Points : 531
Envoyer un message via MSN à amoiraud
Tu a défini une constante genre ROOT_PATH pour avoir le chemin de la racine de ton application ?
Si oui modifie ton require pour tester :

Code :
1
2
 
require ROOT_PATH . 'Zend/Date.php';
Sinon pour appeler zend_date fait plutot comme ca :

Code :
1
2
 
$date = new Zend_Date();
Mais normalement pour appeler Zend_Date tu n'a pas besoin de require, tu à bien ajouté la librairie Zend dans ta liste d'include paths et pas seulement le dossier library ?
amoiraud est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 16h58   #3
Membre du Club
 
Avatar de florianjoy54
 
Inscription : octobre 2009
Messages : 154
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 154
Points : 56
Points : 56
merci pour ta reponse, non je n'ai pas rajouté de ROOT_PATH c'est le chemin de base qu'il me donne quand je fais get_include_path().

qu'est ce que tu entends par "liste d'include paths" ? il se trouve ou se dossier ?
__________________
Force et Honneur, Courage et Culture, sans peur ni reproche
florianjoy54 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 17h10   #4
Membre expérimenté
 
Avatar de amoiraud
 
Homme Adrien
Développeur Web
Inscription : octobre 2006
Messages : 405
Détails du profil
Informations personnelles :
Nom : Homme Adrien
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2006
Messages : 405
Points : 531
Points : 531
Envoyer un message via MSN à amoiraud
Oublie la liste d'include paths (moi c'est une liste que j'ai dans mon application.ini mais si tu a ajouté le dossier library dans l'include path normalement c'est OK).
Pär contre quand tu appel Zend_Date c'est depuis le public donc il ne peut pas trouver Zend, essaye ca :

Code :
1
2
 
var_dump(dirname(dirname(__FILE__)) . '/Zend/Date.php');die;
Et dis moi le chemin qu'il te donne

EDIT :
Ou alors c'est un problème d'autoloader, tu à utilisé un tuto pour mettre en place ta structure MVC ? Si oui lequel ?
amoiraud est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 17h28   #5
Membre du Club
 
Avatar de florianjoy54
 
Inscription : octobre 2009
Messages : 154
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 154
Points : 56
Points : 56
le chemin -> string(25) "C:\wamp\www/Zend/Date.php

alors la j'ai plus les erreurs mais ca ne m'affiche que le chemin, aucune date.

alors je me sert du livre les cahiers du programmeur Zend Framework de Julien Pauli et Guillaume Ponçon.

et pour tester si le framework fonctionne ils testent ces trois lignes :

Code :
1
2
3
4
5
 
// Affichage de la date courante
require 'Zend/Date.php';
$date = new Zend_Date();
echo $date;
Zend_loader viens après normalement ici je ne devrais pas en avoir besoin ...
Images attachées
Type de fichier : jpg zend.jpg (160,9 Ko, 3 affichages)
Type de fichier : png zend.png (118,1 Ko, 3 affichages)
__________________
Force et Honneur, Courage et Culture, sans peur ni reproche
florianjoy54 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 17h33   #6
Membre expérimenté
 
Avatar de amoiraud
 
Homme Adrien
Développeur Web
Inscription : octobre 2006
Messages : 405
Détails du profil
Informations personnelles :
Nom : Homme Adrien
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2006
Messages : 405
Points : 531
Points : 531
Envoyer un message via MSN à amoiraud
OK ba le plus simple je pense est de définir une constante ROOT_PATH dans ton index.php, mais sinon essaye ca :

Code :
1
2
 
require dirname(dirname(__FILE__)) . 'library/Zend/Date.php';
amoiraud est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 17h43   #7
Membre du Club
 
Avatar de florianjoy54
 
Inscription : octobre 2009
Messages : 154
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 154
Points : 56
Points : 56
oui c'est la ligne que j'ai testé juste après mais j'ai le message d'erreur suivant

Code :
1
2
3
4
 
Warning: require_once(Zend/Date/DateObject.php) [function.require-once]: failed to open stream: No such file or directory in C:\wamp\www\library\Zend\Date.php on line 25
 
Fatal error: require_once() [function.require]: Failed opening required 'Zend/Date/DateObject.php' (include_path='.;C:\php5\pear') in C:\wamp\www\library\Zend\Date.php on line 25
php.ini

Code :
1
2
3
 
; Windows: "\path1;\path2"
include_path = ".;C:/wamp/www/library/"
__________________
Force et Honneur, Courage et Culture, sans peur ni reproche
florianjoy54 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/06/2011, 18h19   #8
Membre du Club
 
Avatar de florianjoy54
 
Inscription : octobre 2009
Messages : 154
Détails du profil
Informations forums :
Inscription : octobre 2009
Messages : 154
Points : 56
Points : 56
Bon j'ai trouvé effectivement tu avais raison il y avais bien un probleme autoloader.

j'ai du inclure les deux lignes suivantes

Code :
1
2
3
 
require_once 'Zend/Loader/Autoloader.php';
$autoloader = Zend_Loader_Autoloader::getInstance();
et j'ai du aussi setter mon include_path personnellement je trouve ca horrible mais bon ...

Code :
1
2
3
4
5
6
 
 
set_include_path(implode(PATH_SEPARATOR, array(
    realpath(dirname(__FILE__) . '/../library'),
    get_include_path(),
)));
__________________
Force et Honneur, Courage et Culture, sans peur ni reproche
florianjoy54 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h18.


 
 
 
 
Partenaires

Hébergement Web