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

MVC PHP Discussion :

Contrôler action [ZF 1.5]


Sujet :

MVC PHP

  1. #1
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 10
    Par défaut Contrôler action
    Bonjour,

    Je suis un débutant , je créer un controller index puis j'ai créer dedans 4 action:
    index, ajouter, supprimer, modifier .

    L'action index s'affiche correctement via l'url : http://localhost/g4mobile/ ,mais ni elle ni les autres action ne s'affichent via les urls:
    http://localhost/g4mobile/index/index
    http://localhost/g4mobile/index/ajouter
    http://localhost/g4mobile/index/supprimer
    http://localhost/g4mobile/index/modifier

    par contre j'ai une erreur 404 quand je veux les afficher.

    Merci d'avance pour votre aide.

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    As-tu activé le mod_rewrite d'Apache ?

  3. #3
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 10
    Par défaut
    oui je l'ai déjà activé.

    #LoadModule proxy_http_module modules/mod_proxy_http.so
    LoadModule rewrite_module modules/mod_rewrite.so
    LoadModule setenvif_module modules/mod_setenvif.so
    #LoadModule speling_module modules/mod_speling.so

  4. #4
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 10
    Par défaut
    Bonjour,

    j'ai remarquer quelque chose une fois je passe par les liens suivant

    http://localhost/g4mobile/index.php/index/index
    http://localhost/g4mobile/index.php/index/ajouter
    http://localhost/g4mobile/index.php/index/supprimer
    http://localhost/g4mobile/index.php/index/modifier

    les actions s'affichent correctement.

    mais j'arrive pas à localiser d'où viens l'erreur pour les liens de type

    http://localhost/g4mobile/{controller}/{action}

    merci d'avance pour votre aide.

  5. #5
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Quel est le contenu de ton fichier .htaccess ?

  6. #6
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 10
    Par défaut
    voici le contenu du .htaccess

    # Règles de réécriture pour Zend Framework
    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule .* index.php
    # Sécurité : Ne pas autoriser le parcours de répertoires
    Options -Indexes
    # Configuration PHP
    php_flag magic_quotes_gpc off
    php_flag register_globals off
    php_flag short_open_tag on

  7. #7
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Ce n'est pas le .htaccess conseillé. Essaye celui-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]

  8. #8
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 10
    Par défaut
    j'ai changé le .htaccess mais le problème persiste toujours.

  9. #9
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    A priori, c'est de toute façon un problème de rewriting.
    Un truc pour vérifier : remplace le contenu de ton index.php par echo 'test'; Puis lance n'importe quelle url => http://localhost/g4mobile/testUrl par exemple. Si ça ne marche pas, il y a deux solutions :
    1) Soit la config d'Apache n'est pas bonne. Revérifie-là, et regarde les logs d'erreur d'Apache.
    2) Soit le rewriting ne trouve pas index.php. Où se situe ton .htaccess et ton index.php ?

  10. #10
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 10
    Par défaut
    voici arborescence du répertoire ou se trouve mes fichiers :

    =>g4mobile
    |=>application
    | |=>controllers
    | | |IndexController.php
    | |=>layouts
    | | |layout.phtml
    | |=>models
    | | |Albums.php
    | |=>views
    | | |=>helpers
    | | | |BaseUrl.php
    | | |=>scripts
    | | | |=>index
    | | | | | index.phtml
    | | | | | ajouter.phtml
    | | | | | supprimer.phtml
    | | | | | modifier.phtml
    | |config.ini
    |=>library
    |=>public
    | |=>css
    | |=>images
    | |=>js
    |index.php
    |.htaccess
    pour le fichier http.conf j'ai fait la modification suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #
        # AllowOverride controls what directives may be placed in .htaccess files.
        # It can be "All", "None", or any combination of the keywords:
        #   Options FileInfo AuthConfig Limit
        #
        AllowOverride All
    et j'ai ajouter le virtualhost suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <VirtualHost *:80>
        ServerName g4mobile.localhost
        DocumentRoot c:/site/g4mobile/public
    </VirtualHost>

  11. #11
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Et tu as essayé en supprimant le virtualhost ?

  12. #12
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 10
    Par défaut
    je l'ai supprimer mais le problème persiste.

  13. #13
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Là, je sèche ! Dernière tentative : as-tu regardé dans les logs d'erreurs d'Apache ?

  14. #14
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 10
    Par défaut
    voici ce qui est affiché dans le logs d'apache :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    [Thu Aug 27 17:23:29 2009] [notice] Child 3968: Starting thread to listen on port 80.
    [Thu Aug 27 17:23:45 2009] [error] [client 127.0.0.1] File does not exist: C:/Program Files/EasyPHP 3.0/www/favicon.ico
    [Thu Aug 27 17:23:46 2009] [error] [client 127.0.0.1] File does not exist: C:/site/G4Mobile/index, referer: http://127.0.0.1/G4Mobile/
    [Thu Aug 27 17:23:48 2009] [error] [client 127.0.0.1] File does not exist: C:/Program Files/EasyPHP 3.0/www/favicon.ico
    [Thu Aug 27 17:23:48 2009] [error] [client 127.0.0.1] File does not exist: C:/Program Files/EasyPHP 3.0/www/favicon.ico
    [Thu Aug 27 17:24:09 2009] [error] [client 127.0.0.1] File does not exist: C:/site/G4Mobile/index, referer: http://127.0.0.1/G4Mobile/

  15. #15
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Je vois deux problèmes :
    1) il ne cherche pas dans 'public'. As-tu essayé dans ton virtualhost de rajouter / après public ?
    2) il cherche 'index' et non pas 'index.php'. Vérifie tes règles de rewriting.

  16. #16
    Membre régulier
    Inscrit en
    Août 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 10
    Par défaut
    c'est résolu !!!

    j'ai mis le fichier .htaccess et le index.php dans le repertoire "/public" et j'ai modifier les chemins dans fichier index.php et maintenant tout marche bien.

    un Grand merci pour vg33 qui n'as pas hésité a me donner de l'aide.

  17. #17
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Super ! N'oublie pas le tag

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

Discussions similaires

  1. Contrôler les actions sur une fenêtre externe
    Par Asdorve dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 27/04/2011, 10h22
  2. contrôler certaines actions avec webbrowse
    Par Montor dans le forum Contribuez
    Réponses: 0
    Dernier message: 19/04/2011, 19h25
  3. Réponses: 1
    Dernier message: 04/06/2008, 20h13
  4. Réponses: 2
    Dernier message: 09/08/2007, 17h38
  5. action APRES chargement complet ...
    Par PinGuy dans le forum Delphi
    Réponses: 7
    Dernier message: 06/07/2006, 17h16

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