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 :

Comment organiser le controleur global de mon appli ?


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2015
    Messages
    518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Juillet 2015
    Messages : 518
    Points : 184
    Points
    184
    Par défaut Comment organiser le controleur global de mon appli ?
    Bonjour,

    J'ai créé une structure MVC en m'inspirant de divers tuto. La structure me convient parfaitement enfin presque..

    La structure actuelle :

    Nom : structure.png
Affichages : 85
Taille : 7,2 Ko

    à la racine il y a le fichier index.php (le controleur global de l'appli).

    dont voici le contenu :

    Code php : 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
    <?php
     
    ob_start();
     
    // On inclut le contrôleur s'il existe et s'il est spécifié
    if (!empty($_GET['p']) && is_file('controller/'.$_GET['p'].'.php'))
    {
        include 'controller/'.$_GET['p'].'.php';
    }
    else
    {
        include 'controller/login.php';
    }
     
    $content = ob_get_clean();
    require 'view/template.php';

    jusqu'ici tout va bien.

    Maintenant si je souhaite créer plusieurs répertoires dans le dossier controller, par exemple controller/membres, controller/forum etc.. que dois-je faire ? car si je mets une page ici "controller/membres/inscription.php" le controleur global ne trouvera pas la page..

    Merci à vous

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 420
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 420
    Points : 15 789
    Points
    15 789
    Par défaut
    si vous avez dans l'URL p=membres/inscription, votre controleur fonctionnera très bien en utilisant le fichier controller/membres/inscription.php.

    par contre vous pouvez avoir un problème avec par exemple p=../../../index. pour éviter des problème de sécurité, vous devez donc vérifier que le contenu de $_GET["p"] soit bien correct.
    vous pouvez par exemple autoriser uniquement les lettres, chiffres ainsi que les caractères "/" et "_", je pense que cela devrait suffire

  3. #3
    Membre habitué
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2015
    Messages
    518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Juillet 2015
    Messages : 518
    Points : 184
    Points
    184
    Par défaut
    Bonjour mathieu et merci pour la réponse,

    Citation Envoyé par mathieu Voir le message
    si vous avez dans l'URL p=membres/inscription, votre controleur fonctionnera très bien en utilisant le fichier controller/membres/inscription.php.
    ok mais je n'ai jamais vu un site utilisant ce type d'url.. :/ ma structure est t'elle bonne/convenable ?

    Citation Envoyé par mathieu Voir le message
    par contre vous pouvez avoir un problème avec par exemple p=../../../index. pour éviter des problème de sécurité, vous devez donc vérifier que le contenu de $_GET["p"] soit bien correct.
    vous pouvez par exemple autoriser uniquement les lettres, chiffres ainsi que les caractères "/" et "_", je pense que cela devrait suffire
    donc pour le moment mon contrôleur global n'est pas sécurisé ?

    Je dois utiliser preg-match ?

Discussions similaires

  1. Réponses: 5
    Dernier message: 02/03/2009, 15h10
  2. Variable globales pour mon appli
    Par soufir dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 07/06/2006, 11h51
  3. Réponses: 7
    Dernier message: 04/06/2004, 15h20
  4. Réponses: 4
    Dernier message: 16/08/2003, 13h21
  5. Comment être sure que mon appli prenne le focus ?
    Par AmaX dans le forum Composants VCL
    Réponses: 2
    Dernier message: 21/12/2002, 15h00

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