Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
Je me heurte à un problème depuis quelques jours et je ne comprend pas et ne trouve pas ma(mes) possible(s) erreur(s).
Donc j'ai décidé d'installer la lib PHPDOCX (http://www.phpdocx.com/) pour pouvoir éditer et générer des fichiers word facilement.
J'utilise ZF 1.11.11, la lib PHPExcel.
Je travaille en local et tout fonctionne parfaitement bien.
Mon problème viens lorsque je met mon appli en production (chez OVH).
Voici un bout de mon /public/index.php :
/** Zend_Application */
require_once 'Zend/Application.php';
require_once 'phpexel/PHPExcel.php';
require_once 'phpdocx/classes/createDocx.inc';
Le plus simple test ne fonctionne pas, càd l'inclusion de la lib...
En local le require_once fonctionne, je génère mes fichiers et tout va bien.
En production, j'ai le droit à un petit :
Warning: require_once(phpdocx/classes/createDocx.inc) [function.require-once]: failed to open stream: No such file or directory in /....url....../public/index.php on line 20
Fatal error: require_once() [function.require]: Failed opening required 'phpdocx/classes/createDocx.inc' (include_path='/....url....../library:.:/usr/local/lib/php') in /....url....../public/index.php on line 20
Donc j'ai enlevé tout le code pour la génération de mes fichiers, j'ai commenté mon inclusion et je n'obtiens aucuns messages (logique !).
Une fois mon inclusion rétablie ce message apparait.
Si quelqu'un a une piste je suis preneur car je n'en peux plus de perdre du temps la-dessus.
Merci
Hors ligne
L'erreur est plutôt explicite, il ne trouve pas le fichier que tu essaie d'inclure, c'est donc un problème de chemin
Ton serveur doit tourner sous linux en général il s'agit d'un problème de casse.
Hors ligne
Oui je suis d'accord sur l'erreur mais je n'utilise aucun accent dans mes dossier et fichiers.
Hors ligne
Warning: require_once(phpdocx/classes/createDocx.inc) [function.require-once]: failed to open stream: No such file or directory in /homez.xxx/mon_domaine/www/INTRANET/public/index.php on line 20
Fatal error: require_once() [function.require]: Failed opening required 'phpdocx/classes/createDocx.inc' (include_path='/homez.xxx/mon_domaine/www/INTRANET/library:.:/usr/local/lib/php') in /homez.xxx/mon_domaine/www/INTRANET/public/index.php on line 20
Je viens de remarquer le 'library:.:' celà correspond à quoi?
Hors ligne
Je reviens vers vous car je n'ai toujours pas réussi à utiliser la librairie....
J'ai beau retourner le problème dans tout les sens, mes paths sont corrects et ils fonctionnent en local.
Je ne sais vraiment plus quoi faire.
Voici mon index.php situé dans mon dossier public
<?php // Define path to application directory defined('APPLICATION_PATH') || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application')); // Define application environment defined('APPLICATION_ENV') || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production')); // Ensure library/ is on include_path set_include_path(implode(PATH_SEPARATOR, array( realpath(APPLICATION_PATH . '/../library'), get_include_path(), ))); /** Zend_Application */ require_once 'Zend/Application.php'; require_once 'phpexel/PHPExcel.php'; require_once 'phpdocx/classes/createDocx.php'; // Create application, bootstrap, and run $application = new Zend_Application( APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini' ); $application->bootstrap()->run();
J'ai vu que les .inc c'est le mal (d'après ce que j'ai pu lire), j'ai donc modifié les fichiers de la lib et tout les includes qui vont avec.
Mais mon problème reste inchangé.
Warning: require_once(phpdocx/classes/createDocx.php) [function.require-once]: failed to open stream: No such file or directory in /homez.xxx/mon_domaine/www/INTRANET/public/index.php on line 20
Fatal error: require_once() [function.require]: Failed opening required 'phpdocx/classes/createDocx.php' (include_path='/homez.xxx/mon_domaine/www/INTRANET/library:.:/usr/local/lib/php') in /homez.xxx/mon_domaine/www/INTRANET/public/index.php on line 20
Hors ligne
Tu es sur à 100% de la casse de ton chemin ?
si tu as un chemin dossier/Autre_Dossier et que tu y fait appel dans ton include avec dossier/autre_dossier
Cela ne marchera pas sur un servuer linux.
Es tu sur d'avoir tout copié?
Enfin, regarde les droits mais normalement le message d'erreur est explicite ...
Hors ligne
Oui j'en suis sur.
J'utilise d'autre lib exactement de la même manière et je n'ai jamais eu aucuns soucis.
Les libs sont bien présentes sur le ftp.
Je vais changer de méthode car je n'arrive pas à déployer cette lib, c'est malheureux elle avait l'air sympa
Merci de votre aide en tout cas.
Hors ligne