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

EDI, CMS, Outils, Scripts et API PHP Discussion :

[Configuration] Ne plus devoir écrire "GET"


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 40
    Par défaut [Configuration] Ne plus devoir écrire "GET"
    Bonjour,

    Voilà je compte monter mon mini-serveur avec un bon vieux pc déclassé. Je compte y transférer un site qui se trouve actuellement sur un serveur "professionnel" (mais c'est très relatif).

    Dans mes pages j'utilise un passage de variable par méthode GET via les liens URL qui lient mes pages. J'avais trouvé le moyen de ne plus devoir utiliser le tableau $_GET, mais directement les variables par leur nom.

    Par exemple lorsque je passe le lien index.php?variable=contenu, dans mon code php, je peux directement utiliser "$variable" et elle contiendra "contenu". Tout ceci marche sur le serveur "professionnel" actuel.

    Mnt quand je le mets sur MON mini-serveur, je DOIS commencer par faire quelque chose du genre "$variable=$_GET['variable']".

    Je sais qu'il est possible de modifier ça dans la configuration PHP pour ne plus devoir le faire... mais je ne sais plus du tout comment et je n'arrive plus à remettre la main dessus!

    Quelqu'un(e) pourrait m'aider?

    D'avance, merci.
    Vig

  2. #2
    Membre chevronné Avatar de goodpz
    Profil pro
    Inscrit en
    Février 2007
    Messages
    475
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 475
    Par défaut
    C'est l'option register_globals ( http://fr2.php.net/register_globals )

    Pour des raisons de sécurité, il est très déconseillé de l'activer.

  3. #3
    Membre éclairé
    Homme Profil pro
    Coordinateur développement web
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Coordinateur développement web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Par défaut
    salut,

    je rejoind goodpz pour te déconseiller de l'activer. les register global sont une faille importante de sécurité et ton site va devenir vulnérable aux attaques.

    Mic

  4. #4
    Membre émérite
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Par défaut
    Comment ne pas être daccord avec les 2 commentaires précédant...

    Modifie plutot ton code en conséquence !

  5. #5
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    ça va même plus loin

    je mets systématiquement la boucle suivant en début de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    foreach (array_keys($_REQUEST) AS $key) {
     unset(${$key});
    }
    qui si mon hébergeur à mit les resgister global à on efface des variables

    imagine que tu fasse un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while (macondition) {
     $maListe[]=calculItem();
    }
    qui constitue le tableau des données que tu vas mettre dans ta base
    il suffit que l'utilisateur appelle ton script ainsi pour y mettre tout autre chose
    http://host/tonscript.php?maListe[]='un vieux hack'

    vu que tu initialise pas ton tableau avec $maListe = array();
    et que le resgister global le fait pour toi le premier élément dans la liste sera 'un vieux hack'

    donc le moindre oublit de ta part ou d'un développeur d'une librairie que tu utilise risque de véroller ton développement

    Donc jamais de resgister global !
    A+JYT
    PS: voir aussi le safe mode

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 40
    Par défaut
    Ok! Merci pour vos réponses... Je me disais aussi que c'était dangereux ce truc! Je vais modifier mon code, question de faire un truc propre.

    Merci à tous.
    Vig

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

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