Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 22-10-2013 17:24:12

Renard9
Nouveau membre
Date d'inscription: 22-10-2013
Messages: 3

soucis 404

Bonjour,

J'essaye désespéramment de réussir à afficher une page qui ne soit pas d'erreur et je ne vois pas comment trouver la solution...

Pour apprendre le Zend, j'ai installé chez NUXIT sur un sous-domaine http://authentification.votrecoop.org/ l'application ZEND avec un .htacess :

Code:

    AddHandler x-httpd-php5 .php
    AddType application/x-httpd-php5 .php

    RewriteEngine On
    # Only apply to URLs on this domain
    RewriteCond %{HTTP_HOST} ^authentification.votrecoop.org$
     
    # Only apply to URLs that aren't already under folder.
    RewriteCond %{REQUEST_URI} !^/public/
     
    # Don't apply to URLs that go to existing files or folders.
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
     
    # Rewrite all those to insert /folder.
    #RewriteRule ^(.*)$ /public/$1
     
    # Also redirect the root folder.
    RewriteCond %{HTTP_HOST} ^authentification.votrecoop.org$
    RewriteRule ^(/)?$ public/index.php [L]

et l'apllication.ini

Code:

    [production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 0

cela semble fonctionner, mais j'ai systématiquement le fichier 404.phtml qui s'affiche (pourtant le controller se lance. Enfin...)

fichier index.

Code:

<?php
/**
 * Fichier d'entrée de l'application.
 *
 * @package App
 */

//on définit le chemin de notre application
define ( 'APPLICATION_PATH', realpath ( dirname ( __FILE__ ) . '/../' ) );

//on définit le chemin de notre librairie
$library = APPLICATION_PATH. '/library';
set_include_path ($library . PATH_SEPARATOR . get_include_path ());

echo "<br>";
echo "<br>";
echo "APPLICATION PATH : ".APPLICATION_PATH;
echo "<br>"."library : ".$library;
echo "<br>";
echo "<br>";

require_once 'Zend/Loader/Autoloader.php';
$loader = Zend_Loader_Autoloader::getInstance();
$loader->registerNamespace('App_');

//On charge les classes à utiliser ;
Zend_Loader::loadClass ( 'Zend_Controller_Front' );

try {

    //getInstance() est utilisé pour récupérer une instance du contrôleur frontal.
    $front = Zend_Controller_Front::getInstance();

    //le contrôleur frontal renvoie les exceptions qu'il a rencontrées
    //à l'objet de réponse, nous offrant une possibilité élégante de les gérer.
    $front->throwExceptions(true);

    //setControllerDirectory() est utilisé pour
    //chercher les fichiers de
    //classes de contrôleurs d'action.
    $front->setControllerDirectory(APPLICATION_PATH . '/application/controllers');

    //Dispatch lance notre application, fait le gros travail du contrôleur frontal.
    //Il peut facultativement prendre un objet de requête et/ou un objet de réponse,
    //permettant ainsi au développeur de fournir des objets personnalisés.
    $front->dispatch();

    //Traite les exceptions du contrôleur (généralement 404)
} catch (Zend_Controller_Exception $e) {
    include 'errors/404.phtml';
    //Traite les autres exceptions du contrôleur
} catch (Exception $e) {
    include 'errors/500.phtml';
}

// affiche de Hello Zend framework avec la date du jour

require 'Zend/Date.php';

$date= new Zend_Date();

echo "<br><br>Hello Zend Framework, nous sommes le ".$date;

Je ne sais pas comment faire. Si vous avez une idée, je suis preneur.

Hors ligne

 

#2 24-10-2013 22:13:59

Renard9
Nouveau membre
Date d'inscription: 22-10-2013
Messages: 3

Re: soucis 404

Bonsoir,

J'ai essayé d'avancer sur la réponse et j'ai réussi à "extraire" l'exeption :

Code:

Zend_Controller_Dispatcher_Exception Object ( 
    [_previous:private] => [message:protected] => Invalid controller specified (
        index
    ) 
    [string:private] => [code:protected] => 0 [file:protected] => /web/votrecoop/authent/library/Zend/Controller/Dispatcher/Standard.php [line:protected] => 248 [trace:private] => Array (
        [0] => Array ( 
            [file] => /web/votrecoop/authent/library/Zend/Controller/Front.php [line] => 955 [function] => dispatch [class] => Zend_Controller_Dispatcher_Standard [type] => -> [args] => Array ( 
                [0] => Zend_Controller_Request_Http Object ( 
                    [_paramSources:protected] => Array ( 
                        [0] => _GET 
                        [1] => _POST 
                    ) 
                    [_requestUri:protected] => / [_baseUrl:protected] => [_basePath:protected] => [_pathInfo:protected] => / [_params:protected] => Array ( 
                        [controller] => index [action] => index [module] => default 
                    ) 
                    [_rawBody:protected] => [_aliases:protected] => Array ( ) 
                    [_dispatched:protected] => 1 
                    [_module:protected] => default [_moduleKey:protected] => module [_controller:protected] => index [_controllerKey:protected] => controller [_action:protected] => index [_actionKey:protected] => action 
                ) 
                [1] => Zend_Controller_Response_Http Object ( 
                    [_body:protected] => Array ( ) 
                    [_exceptions:protected] => Array ( ) 
                    [_headers:protected] => Array ( ) 
                    [_headersRaw:protected] => Array ( ) 
                    [_httpResponseCode:protected] => 200 
                    [_isRedirect:protected] => [_renderExceptions:protected] => [headersSentThrowsException] => 1 
                ) 
            ) 
        ) 
        [1] => Array ( 
            [file] => /web/votrecoop/authent/public/index.php [line] => 51 
            [function] => dispatch [class] => Zend_Controller_Front [type] => -> [args] => Array ( ) 
        ) 
    ) 
)

Cela manque de clarté pour moi...

Dernière modification par Renard9 (24-10-2013 23:04:30)

Hors ligne

 

#3 24-10-2013 22:38:46

Renard9
Nouveau membre
Date d'inscription: 22-10-2013
Messages: 3

Re: soucis 404

Re

La réponse est dans

Code:

    [_previous:private] => [message:protected] => Invalid controller specified (
        index
    )

Le controller doit s'appeler indexController et j'avais IndexController...

Finalement, c'est simple... Mais je n'ose pas renommer indexController en IndexController

Dernière modification par Renard9 (24-10-2013 23:02:25)

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