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

Langage PHP Discussion :

Front controller avec redirection


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Septembre 2010
    Messages : 76
    Points : 42
    Points
    42
    Par défaut Front controller avec redirection
    Bonjour,

    Je suis en train de monter mon premier site professionnel. Je suis un peu novice et ai repiqué pas mal d'idées sur ce que je connais de Zend Framework pour m'aider. Mon problème est le suivant :

    J'utilise un front controller (enfin je crois que c'est le nom officiel), c-a-d je suis un architecture MVC mais toute page de mon site est accessible par une URL du type :
    www.bidule.com/index.php?page=trucmuche.php
    ce que me permet, dans l'index, de centraliser les traitement et d'appeler automatiquement le bon contrôleur et la bonne vue pour traiter la page. Ca, ça marche.

    Néanmoins, j'aimerais bien cacher ce paramètre tout moche pour quelque chose du genre
    www.bidule.com/trucmuche
    pour que ça appelle la page trucmuche.php

    2nd problème, à résoudre impérativement (cahier des charges...), pour certains paramètres, par exemple ctgy
    ex : www.bidule.com/index.php?page=ctgy&ctgy=vins
    j'ai besoin que ça s'affiche comme un sous-domaine genre
    vins.bidule.com

    Quelqu'un aurait-il une piste ou, le cas échéant, me dire que je vais droit dans le mur ?

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 12
    Points : 16
    Points
    16
    Par défaut
    Salut,
    Il faut que t'utilise les fameuses réécritures d'url qui te permettront d'avoir des url propre.
    Elles sont gérées par fichier htaccess.
    Le web est plein de tuto pour t'apprendre à utiliser ça. J'en suis sur que tu pourras même en trouver sur developpez.com

    Tu verras c'est assez simple à mettre en œuvre même pour un débutant.

  3. #3
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Pour des url plus propre une solution simple consiste à renvoyer tout le traffic vers ton index :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteEngine on
    RewriteCond %{REQUEST_URI} !/pub/
    RewriteRule !\.(js|ico|gif|jpg|JPG|png|css)$ index.php
    Ici je redirige tous le trafic vers index.php sauf tout ce qui se trouve dans le dossier /pub/ et les extensions listées.

    Puis de découper dans ton controller l'url reçu via :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_SERVER['REQUEST_URI']
    Du coup une url du genre monsite.com/test/qsd arrivera sur l'index et tu as juste à la découper pour récupérer les éléments que tu souhaites
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Septembre 2010
    Messages : 76
    Points : 42
    Points
    42
    Par défaut Pour les sous-domaines
    Cool merci ça a l'air super simple comme ça, et donc pour les sous-domaine je peux récupérer pareil dans mon index mais que pour l'utilisateur l'url continue à avoir une bonne tête ?

  5. #5
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Citation Envoyé par rolintoucour Voir le message
    Cool merci ça a l'air super simple comme ça, et donc pour les sous-domaine je peux récupérer pareil dans mon index mais que pour l'utilisateur l'url continue à avoir une bonne tête ?
    Pour les sous domaine il y'a à mon avis une config spécifique à faire coté apache. Regarde également les "wild-card DNS". Mais il est effectivement possible de simuler des sous domaine. On voit ça souvent sur les plateforme de blog qui propose de faire des url du genre http://utilisateur.site.com ou évidemment utilisateur n'est pas un vrai sous domaine mais va pointer par exemple sur http://site.com/blog/utilisateur
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Septembre 2010
    Messages : 76
    Points : 42
    Points
    42
    Par défaut Pour mise en ligne ?
    Merci pour votre aide. Je me rend compte que pour rediriger de belles url ça marche niquel.

    Par contre pour les sous-domaines, je commence à douter. En effet, localement, avec mon site en
    www.bidule.com
    truc.bidulle.com est paxs interprété automatique et malgré mon .htaccess mon navigateur ne trouve pas la page.
    Après bien sur je peux mettre en dur dans le HOSTS, mais quand je mettrai le site en ligne est-ce que les sous-domaines marcheront automatiquement ou faut-il payer plus cher pour nom de domaine ou hébergement ???

  7. #7
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Pour les sous domaine en principe aucun frais supplémentaires. Cependant le serveur doit avoir une configuration qui supporte ce procédé , voir mes liens précédents.
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Si je puis me permettre : pourquoi ne pas utiliser les frameworks existants ?

    Si ZF est trop gros pour ton projet, tu en as d'autres plus légers, comme CodeIgniter et son fork Kohana que j'aime beaucoup.

    Refaire son propre MVC dans un but de formation, c'est parfait. Mais si c'est pour livrer une appli professionnelle, autant prendre les bons outils.
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

Discussions similaires

  1. [VB.NET] Création de control avec visual studio
    Par HULK dans le forum Windows Forms
    Réponses: 6
    Dernier message: 01/08/2007, 18h06
  2. Deplacement d'un controle avec la souris
    Par hepsilonz dans le forum MFC
    Réponses: 6
    Dernier message: 23/12/2005, 15h42
  3. Réponses: 5
    Dernier message: 12/05/2005, 10h49
  4. [VB.NET] Comment récupérer le nom d'un control avec le focus
    Par jayce007 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 20/01/2005, 00h53
  5. [VB.NET] ForeColor d'un control avec Enabled=False
    Par jennings dans le forum Windows Forms
    Réponses: 2
    Dernier message: 06/12/2004, 14h41

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