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 :

Test sur le MVC de base


Sujet :

MVC PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 33
    Par défaut Test sur le MVC de base
    Bonjour,

    De nouveau je poursuis mes tests sur Zend Framework sur la base du livre "Zend Framework - Bien développer en PHP".

    Je suis au chapitre 6 où il est question de mettre en place l'architecture minimaliste MVC.

    > J'ai donc mis en place l'arborescence suivante :

    site_zend
    +application
    ++controllers
    +++IndexController.php
    ++views
    +++scripts
    ++++index
    +++++index.phtml
    ++models
    +html
    ++index.php
    ++.htaccess

    > Dans le fichier .htaccess j'ai placé les lignes suivantes :

    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]

    > J'ai créé une virtualhost sur appache : il est ok.

    > Dans le fichier html/index.php j'ai placé le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    require 'Zend/Loader/Autoloader.php';
    $autoloader = Zend_Loader_Autoloader::getInstance();
    Zend_Controller_Front::run('../application/controllers');
    > Dans le fichier application/controllers/IndexController j'ai placé le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    class IndexController extends Zend_Controller_Action
    {
     
    	public function indexAction()
    	{
    	}
     
    	public function contactAction()
    	{
    	}
     
    	public function languageAction()
    	{
    	}
     
    }
    puis enfin j'ai placé les vues.

    Jusqu'ici tout est ok et fonctionne. Par exemple si je tape les urls suivantes :
    http://webserver/
    http://webserver/index
    http://webserver//index/index
    j'ai bien la vue correspondante placée dans application/views/scripts/index/index.phtml.

    J'ai voulu ensuite ajouter un autre contrôleur : reservation.
    Dans le répertoire application/controllers j'ai placé un fichier nommé ReservationControlleur.php. J'y ai placé le code qui suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    class ReservationController extends Zend_Controller_Action
    {
     
    	public function indexAction()
    	{
    	}
     
    	public function listAction()
    	{
    	}
     
    	public function editAction()
    	{
    	}
     
    	public function deleteAction()
    	{
    	}
     
    	public function exportAction()
    	{
    	}
     
    }
    J'ai créer un répertoire reservation dans application/views/scripts et y ai mis les vues correspondant aux actions à savoir edit.phtml, export.html, etc...

    J'ai donc pensé qu'en tapant l'url suivante j'accèderais à ma vue :
    http://webserver//reservation/index

    et bien non !

    A la place j'ai un "Not Found"

    Quelqu'un peut m'expliquer pourquoi ?

    Merci.

  2. #2
    Membre confirmé Avatar de buse974
    Homme Profil pro
    Développeur / Chef de projet informatique
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur / Chef de projet informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Par défaut
    as tu bien créé ta vue index.html dans ton dossier reservation car http://webserver//reservation/index accede au controleur reservation et index a ta vue index.phtml

    sinon esaye webserver/reservation/edit voir si ca plante.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 33
    Par défaut
    Oui, j'ai bien placé index.phtml dans application/views/scripts/reservation et j'ai aussi essayé reservation/edit dans l'url et j'ai la même réponse du serveur web : not found.

    Merci.

  4. #4
    Membre confirmé Avatar de buse974
    Homme Profil pro
    Développeur / Chef de projet informatique
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur / Chef de projet informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Par défaut
    Copie dans ton bootstrap pour toi c'est index.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    //specifie que les erreurs saffiche bien a l'ecran 
     
    		error_reporting(E_ALL |E_STRICT);
    		ini_set('display_errors',1);
    		ini_set('display_startup_errors',1);
    		date_default_timezone_set('Europe/Paris');
    cela permetra que les message d'erreur s'affiche a l'écran.
    et tient moi au courant.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 33
    Par défaut
    J'ai ajouté les lignes indiquées dans
    html/index.php

    puis j'ai tapé l'url suivante :
    http://webserver/reservation/index

    et j'ai toujours le même message :

    Not Found

    The requested URL /reservation/index was not found on this server.
    Apache Server at webserver Port 80

    Je rapelle que le serveur web est opérationnel et que index/index est ok.

    Merci pour les pistes que t'essayes d'explorer.

  6. #6
    Membre confirmé Avatar de buse974
    Homme Profil pro
    Développeur / Chef de projet informatique
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur / Chef de projet informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Par défaut
    Tient je suis tombé sur ce topic http://www.developpez.net/forums/d71...url-not-found/

    donc lui aparament c'est un probleme de config du server de AllowOverride qui n'a pas mis a ALL, jette un coup d'oeil, c'est peu etre la même chose.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 33
    Par défaut
    Ok ! C'est génial ! C'est ce paramètre qui posait problème. Je suis pas encore très familiarisé avec la config apache mais effectivement j'avais un AllowOverride à none qui empêchait la lecture du .htaccess dans lequel se trouve des règles de rewritting.

    D'ailleurs plus tard il me faudra comprendre ce qui est écrit dans le fichier .htaccess.

    Merci buse974.

  8. #8
    Membre confirmé Avatar de buse974
    Homme Profil pro
    Développeur / Chef de projet informatique
    Inscrit en
    Février 2007
    Messages
    117
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur / Chef de projet informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 117
    Par défaut
    De rien.

    Et bonne continuation pour la suite

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

Discussions similaires

  1. [AC-2007] Test sur la requête dans la base Bouquins
    Par Maba24 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 16/06/2010, 11h14
  2. Faire des tests sur la base de données
    Par yasmina13 dans le forum Développement Web en Java
    Réponses: 3
    Dernier message: 25/02/2009, 00h36
  3. test sur une base vide
    Par supersoft5 dans le forum C++Builder
    Réponses: 2
    Dernier message: 30/04/2007, 09h49
  4. Recherche Livre / Conseils sur la conception de Base
    Par Yeuma dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 02/01/2004, 14h25
  5. Jointure sur 2 tables de bases différentes
    Par Celina dans le forum Langage SQL
    Réponses: 10
    Dernier message: 10/11/2003, 11h56

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