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 :

[Sécurité] Passage de variable en GET


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 95
    Par défaut [Sécurité] Passage de variable en GET
    Bonjour tout le monde,

    Je suis entrain de faire un site internet en php et j'aurais quelques questions :

    1. Certains sites ont une url de type www.monsite.com/index.php?num=unnombre (comme pixmania je crois)
    Je voudrais savoir quels sont les avantages et les inconvenients de ce type d'architecture ?( Je sais commment le faire mais je n'ai pas envie de m'aventurer dans une chose qui ne sert à rien et qui prends du temps).

    2. ADODB ou PDO ?

    et puis c'est tout pour l'instant.

    Merci beaucoup pour votre aide.

  2. #2
    Membre éprouvé Avatar de ciesco
    Inscrit en
    Février 2004
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 110
    Par défaut
    En general quand tu vois ca c'est que il y a un traitement derriere avec un moteur de template existant ou fait maison...
    Groso modo tu recupere le Get et ca te permet de faire un include de la partie qui t'interresse.
    L'avantage est enorme car ca te permet de separer le code de ta presentation. Souvent ca corespond a une prog oriente objet comem tu dis mais c'est pas non plus obligatoire.

  3. #3
    Membre éprouvé
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Par défaut
    L'inconvenient à première vu c'est qu'on peut modifier l'url. Il faut alors conctroler le parametre $_GET

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Par défaut
    Citation Envoyé par zulkifli
    L'inconvenient à première vu c'est qu'on peut modifier l'url. Il faut alors conctroler le parametre $_GET
    Ce qui est un avantage ... On peut ainsi controler que la personne connectee a le droit d'afficher la page !
    C'est que je fais. Je recupere le Get et je compare avec les droits de l'utilisateur (qui appartient a un groupe ) s'il est autorise ou non a afficher la page ... Ce qui empeche de tapper l'url en direct .. il faut a chaque fois passer par index qui test !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 95
    Par défaut
    J'ai déjà un moteur de template mais en fait je voulais savoir si une telle architecture n'avait pas des défauts, genre cela est plus long côté serveur, faille de sécurité....
    Pour ce qui est de la modification de l'url, il y aura un controle par session et htaccess après.

  6. #6
    Membre éprouvé Avatar de ciesco
    Inscrit en
    Février 2004
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 110
    Par défaut
    Non si tu as un moteur de template (un bon...) au contraire ca sera plus rapide. En partant du principe que 1000 personen qui reflechisse ensemble optimise mieux que toi tout seul...

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 95
    Par défaut
    En fait j 'essaie d'optimiser au maximun mon code et les temps de chargement des pages et comme je ne trouve pas de site ou cela est expliqué.
    Sinon j'ai une autre question :
    Il vaut mieux avoir une page avec un formulaire ->une page de traitement->une page de reponse ou un page formulaire->une page de traitement puis affichage ou etc ....

  8. #8
    Membre éprouvé
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Par défaut
    Citation Envoyé par dev_php_205
    Citation Envoyé par zulkifli
    L'inconvenient à première vu c'est qu'on peut modifier l'url. Il faut alors conctroler le parametre $_GET
    Ce qui est un avantage ... On peut ainsi controler que la personne connectee a le droit d'afficher la page !
    C'est que je fais. Je recupere le Get et je compare avec les droits de l'utilisateur (qui appartient a un groupe ) s'il est autorise ou non a afficher la page ... Ce qui empeche de tapper l'url en direct .. il faut a chaque fois passer par index qui test !
    Ouais mais un $_GET est toujours modifiable dans l'url
    regarde pour une architecture qui fonctionne de cette manière
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    include( $_GET['page'].".php" );
    n'est pas sécurisée, préférons

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if( file_exists($_GET['page'].".php") ){
       include( $_GET['page'].".php" );
    }

  9. #9
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Par défaut
    je ne fais pas comme cela .

    Je dépile tout le GET, je compare avec un tableau qui pour chaque groupe donne les pages autorisees. Le groupe est connu par la connection de l'utilisateur.
    Si la page demandee n'est pas autorisee je redirige vers une page d'avertissement. Sinon j'appel la page demandée en remettant les param en GET.
    Dans toutes mes pages j'inclus le test. Je fait idem avec les params passes a chaque page.
    Ceci n'empeche evidemment pas de tester l'integrite des valeurs de chaque param. Mais ca c'est fait apres.
    Mais tout ca c'est pour un intranet. Aucun probleme de lenteur de serveur ou de temps de chargement de page ...

  10. #10
    Membre éprouvé
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Par défaut
    ok dev_php_205 je voulais juste dire a meda que le seul inconvénient de travailler avec les $_GET (en géneral) était de rigoureusement les controler (ce que tu fais) car il peuvent être modifiés. Mais tout dépend de l'achitecture, qui est propre à chaque developeur

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 95
    Par défaut
    Non mais en fait je sais comment faut faire (je fais comme dev_php_205)
    mais je voulais juste savoir s'il n'y avait pas d'inconvenient avec cette méthode et si cela est vraiment profitable pour le site.

    Sinon personne peut me dire lequel est le mieux entre adodb et pdo ?

Discussions similaires

  1. Réponses: 8
    Dernier message: 17/02/2009, 16h01
  2. Réponses: 1
    Dernier message: 29/11/2007, 23h43
  3. Passage de variable GET via formulaire POST ?
    Par tintin72 dans le forum Langage
    Réponses: 4
    Dernier message: 25/07/2007, 17h51
  4. Webservices et passage de variable en GET dans l'URL
    Par SuperCed dans le forum Dynamique
    Réponses: 2
    Dernier message: 12/01/2007, 17h24
  5. [Cookies] Passage de variables en GET
    Par Caille Rotie dans le forum Langage
    Réponses: 5
    Dernier message: 03/11/2005, 22h48

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