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 :

[Directives] register_globals = ON sur l'hébergeur JEXISTE


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 4
    Par défaut [Directives] register_globals = ON sur l'hébergeur JEXISTE
    Bonsoir !

    je suis abonné depuis peu chez l'hébergeur JEXISTE (bon ou mauvais c'est pas ma question ;-) )

    Mais j'ai remarqué après quelques jours que le register_globals est à ON ??? http://demo.jexiste.fr/

    1ere question :

    n'est ce pas dangeureux de laisser cela sur ON ???


    2eme question :

    Si il refuse de mettre register_globals = OFF, quelles sont les possibilités pour qu'une variable dans URL ne utilisable qu'avec $_GET ???



    Merci beaucoup !!


    Greg

  2. #2
    Expert confirmé Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Par défaut
    et bienvenue !

    1.
    oui. A toi de bien programmer.

    2.
    En y accèdant par $_GET.

  3. #3
    Futur Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 4
    Par défaut
    je vais m'expliquer plus en détails.

    je récupère les droits d'un utilisateur dans une table en fonction des identifiant donné par l'utilisateur.

    Les différents droits sont "admin", "vip_user" et "user"

    Dans le cas d'un administrateur qui se connecte $user_right sera égal à admin

    dans un script php j'affiche ou non des options en fonction du droit.

    Ex:

    <? if ($user_right="admin"){
    echo " lien vers l'administration du site";
    }
    ?>

    mais n'importe qui peu avoit accès à cet option si l'url suivante est indiquée

    http://www.monsite.com/index.php?user_right=admin



    Pour récupérer la valeur d'une variable je n'ai pas besoin de $_GET puisque justement register_globals est à ON.



    (merci pour l'accueil chaleureux !!!!!)


    Greg

  4. #4
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    Salut

    En effet, ça peut avoir des conséquences fâcheuses sur l'exécution de tes scripts. Peut-être peux-tu invoquer la fonction ini_set() afin de modifier la configuration en début de script (mais j'ai comme un doute) ?

  5. #5
    Expert confirmé Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Par défaut
    Comment est défini $user_right ?
    Tu peux très bien le pré-initialiser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <?php
     
    $user_right = 'user'; //par defaut on est un user
    if (machin) {
       $user_right = 'vip'; //On peut etre un vip
    }
    if (bidule) {
       $user_right = 'admin'; //On a tout les droits
    }
     
    ?>
    Du coup si tu appelles ce bout de code à chaque fois, la variable préalablement valuée par register_globals ne sera pas pris en compte, car écrasées par 'user'.

    D'autres éléments de réponse sur la doc officielle :
    http://php.net/register_globals

  6. #6
    Futur Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 4
    Par défaut
    il y a bien la fonction php_flag register_globals 0 à mettre dans le .htaccess mais j'ai une INTERNAL SERVER ERROR

  7. #7
    Expert confirmé Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Par défaut
    les .htaccess ne sont pas acceptés chez tous les hébergeurs.

  8. #8
    Futur Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 4
    Par défaut
    Merci beaucoup j'ai donc résolu le problème comme Mr N. me l'avais conseillé.

    Par défaut donc $user_right = user

    C'était tout simple

    le .htaccess ne fonctionne effectivement pas chez JEXISTE !

    Merci à vous !

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

Discussions similaires

  1. Formulaire, action "submit" directe après clic sur un bouton radio
    Par eLynx dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/10/2009, 19h29
  2. Réponses: 2
    Dernier message: 10/06/2009, 10h59
  3. Question sur la directive register_global
    Par ami_35000 dans le forum Zend Framework
    Réponses: 2
    Dernier message: 15/05/2009, 12h14
  4. Probleme avec la recherche directe de methodes sur une Class (API java.lang.reflect)
    Par CyberChouan dans le forum API standards et tierces
    Réponses: 14
    Dernier message: 25/01/2007, 17h12
  5. Réponses: 1
    Dernier message: 02/02/2006, 10h11

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