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 :

header est-il fiable ?


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Points : 472
    Points
    472
    Par défaut header est-il fiable ?
    Bonjour,

    Avant j'avais une condition pour afficher ou non le script central de la page.
    Je faisais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(isset($_SESSION['idMembre']))
    {
    affiche le script;
    }
    Avec la variable idMembre créé après l'identification
    Avec ça la page s'affichait, mais il y avait un message d'erreur si la variable de session n'était pas présente.

    Maintenant je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(!isset($_SESSION['idMembre']))
    {
     die(header('Location: http://www.site.com/identification.php'));
    ;}
    Donc là, plus de message d'erreur le gars est immédiatement redirigé sur la page d'identification.
    Mais est-ce fiable ? Peut-on désactiver un header ? Je crois par exemple que certains navigateur ne les acceptent pas (j'ai lu ça pour IE 4 et des poussières je crois, vous me direz c'est très vieux mais un pirate peut justement s'en servir pour ça par exemple. Et puis c'est peut être le cas pour d'autres navigateurs, entre autres failles).
    C'est pas parce que j'ai tort que vous avez raison.

  2. #2
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    c'est pour faire quoi un logout ???

    moi je fais ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    session_start();
    session_destroy();
    header("location:../index.php");
    ?>
    et voila le tour est joué, un header étant dans ton code php, est executé sur le serveur, donc non je vois pas comment il pourrait faire autrement pour détourner cela.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Points : 472
    Points
    472
    Par défaut
    Qu'est ce que t'appelles un logout Maxoo?
    Une procédure de déconnexion ?
    le code que tu files c'est pour montrer comment on déconnecte ?
    Perso je déconnecte pas, le gars est pas connecté sinon justement ça s'affiche.

    et voila le tour est joué, un header étant dans ton code php, est executé sur le serveur, donc non je vois pas comment il pourrait faire autrement pour détourner cela.
    Hum maintenant que tu me dis ça, j'avais peut être lu ça pour les header fait en javascript ou html.

    Bon bah c'était un bon petit post qui n'en veut j'ai l'impression, hein...
    Archi inutile de retester la présence ou non d'une session pour l'affichage d'un script dans la page, le header suffit tout en haut pour interdire l'accès à la page si la session est absente, c'est certain ?
    C'est pas parce que j'ai tort que vous avez raison.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2006
    Messages : 24
    Points : 29
    Points
    29
    Par défaut
    heu là tu vérifie toujours "la présence ou non d'une session" non ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(!isset($_SESSION['idMembre']))
    {
     die(header('Location: http://www.site.com/identification.php'));
    ;}
    le die() va tout stopper, le serveur n'interpretera pas plus loin, le client ne peut absolument rien y faire.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Points : 472
    Points
    472
    Par défaut
    Ouais je suis convaincu.

    Mais est-ce plus sûr de faire le test avec isset($_COOKIE[ session_name() ] ) ou avec $_SESSION['uneVariableDeSession'] ?
    C'est pas parce que j'ai tort que vous avez raison.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 17
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par psychoBob
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(isset($_SESSION['idMembre']))
    {
    affiche le script;
    }
    Avec la variable idMembre créé après l'identification
    Avec ça la page s'affichait, mais il y avait un message d'erreur si la variable de session n'était pas présente.
    Bonjour,

    Et si jamais tu mets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isset(@$_SESSION['idMembre']))
    ? Le message d'erreur s'affiche encore ?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Points : 472
    Points
    472
    Par défaut
    Euh...pourquoi tu me demandes ça ?
    Quand je parlais d'un message d'erreur c'était un message d'erreur à destination du visiteur, écrit par moi même, pas un code erreur php. Le sujet de la question était d'ailleur.

    M'enfin puisqu'on y est, c'est quoi ce @ subrepticement inséré ? Il est censé servir à quoi ?
    C'est pas parce que j'ai tort que vous avez raison.

  8. #8
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    le @ veut dire : meme si y a des erreurs, n'affiche rien !!!

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 221
    Points : 472
    Points
    472
    Par défaut
    Tiens une question comme ça : est-il possible d'avoir un header à retardement qui ne change de page qu'au bout d'un temps donné précisé en paramètre, comme on peut le faire avec les header html (ou javascript je sais plus)
    C'est pas parce que j'ai tort que vous avez raison.

  10. #10
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    un header étant fait coté php, si tu mets du temps, bah tu cliques et tu attends 5 secondes ta page.

    je vois pas vraiment bien l'interet

Discussions similaires

  1. Le champ referer est il fiable ?
    Par laclac dans le forum Sécurité
    Réponses: 2
    Dernier message: 16/03/2010, 12h31
  2. le site backscatterer est-il fiable ?
    Par clavier12AZQSWX dans le forum Linux
    Réponses: 0
    Dernier message: 08/09/2009, 16h45
  3. Réponses: 0
    Dernier message: 24/07/2009, 12h35
  4. Faire une sauvegarde par copie de fichier, est-ce fiable ?
    Par guidav dans le forum Administration
    Réponses: 5
    Dernier message: 04/09/2006, 10h17
  5. Du RAID5 avec du SATA, est-ce fiable ?
    Par shkyo dans le forum Composants
    Réponses: 13
    Dernier message: 02/05/2006, 09h48

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