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 location fonctionne pas :erreur code? [PHP 7]


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Femme Profil pro
    En formation
    Inscrit en
    Septembre 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : En formation

    Informations forums :
    Inscription : Septembre 2020
    Messages : 8
    Points : 11
    Points
    11
    Par défaut Header location fonctionne pas :erreur code?
    Bonjour les dévellopeurs...je suis désolée de venir à vous pur ca, ca fait 3 jours que je cherche de jour comme de nuit l'erreur dans mon code, et je dois remettre le site ce lundi pour obtenir mon diplôme et je n'aurais pas de deuxième chance! Autant vous dire que j'ai la pressionnnn!! et je perds un temps fou à chercher ce qui va pas, mais sans succès!
    MAIS QUE SE PASSE T'IL???????????
    j'ai crée un espace admin pour mon site vitrine, avec une connexion pour l'administrateur, mon soucis c'est que mes header(location:...) fonctionnent pas. En lien avec ca, j'ai crée une session[admin], afin que l'admin aie des boutons qui s'affichent pour afficher et supprimer les articles...mais rien a faire...j'en peux plus je vous jure...je suis sur ca doit pas être grand chose...mais vraiment je trouve pas...alors j'espère que l'un d'entre vous parviendra à éclairer ma lanterne.
    Nom : index.png
Affichages : 514
Taille : 134,2 Ko

    Nom : login.png
Affichages : 579
Taille : 164,7 Ko

    Nom : login2.png
Affichages : 499
Taille : 158,9 Ko

    Nom : article.png
Affichages : 548
Taille : 151,8 Ko

  2. #2
    Membre chevronné
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 262
    Points : 1 928
    Points
    1 928
    Par défaut
    Bonjour,

    De plus en plus d'hébergeurs "limitent" volontairement ou non... ce genre de requêtes, ainsi que les SESSSIONS !

    ca fait 3 jours que je cherche de jour comme de nuit l'erreur dans mon code
    Suis passé par là aussi !

    Résultat des courses : c'était 02switch...

    Mais c'est loin d'être le seul.

    Pour tester, demande à une copine de placer ton code sur un serveur autre afin de comparer.

    De toute façon GG en est témoin.

    DS7

  3. #3
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 790
    Points : 3 056
    Points
    3 056
    Par défaut
    Bonjour

    Je n'ai jamais utilisé un header('location: xxx') en php aussi je n'ai pas d'expérience mais la page suivante indique qu'il faut un exit(); ensuite : https://www.php.net/manual/fr/function.header.php

    Perso, jusqu'à présent, je préfère afficher un "Access denied" avec un code d'erreur HTTP 403. Au script appelant (un code JS p.ex.) à gérer le retour 403 et à faire la redirection qu'il faut. Je conçois toutefois qu'une redirection, le temps de se loguer avec, un redirect à nouveau pour revenir sur la première page peut-être sympa mais je ne suis pas sûr que c'est à PHP à faire cela (cela pourrait être un débat )

  4. #4
    Membre à l'essai
    Femme Profil pro
    En formation
    Inscrit en
    Septembre 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : En formation

    Informations forums :
    Inscription : Septembre 2020
    Messages : 8
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par Droïde Système7 Voir le message
    Bonjour,

    De plus en plus d'hébergeurs "limitent" volontairement ou non... ce genre de requêtes, ainsi que les SESSSIONS !
    ...

    ahahahha....donc tu vois de quoi je parle ^^ merci je vais voir ca pour le tester sur un autre serveur! là j'utilise laragon

  5. #5
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 790
    Points : 3 056
    Points
    3 056
    Par défaut
    Laragon = localhost. En principe tu n'as pas ce type de limitations puisque tu es le patron de ton installation locale.

  6. #6
    Membre à l'essai
    Femme Profil pro
    En formation
    Inscrit en
    Septembre 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : En formation

    Informations forums :
    Inscription : Septembre 2020
    Messages : 8
    Points : 11
    Points
    11
    Par défaut
    oh mince!!! jespérais que c'était ca

  7. #7
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 438
    Points : 4 936
    Points
    4 936
    Par défaut
    Bonjour,

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!$_SESSION["admin"]){.....}

    -Là tu vérifies l'existence de $_SESSION["admin"] ? si oui, alors ce n'est pas la bonne condition, il faut utiliser isset() :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    if(!isset($_SESSION["admin"])){.....}

    -header('location:admin.php'), ajoutes un espace après les deux points et un exit() :header('location: admin.php');exit();
    -header("location:admin"), "admin" ou "admin.php" ?

  8. #8
    Membre à l'essai
    Femme Profil pro
    En formation
    Inscrit en
    Septembre 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : En formation

    Informations forums :
    Inscription : Septembre 2020
    Messages : 8
    Points : 11
    Points
    11
    Par défaut
    ok je vais essayer çà de suite et je reviens dire si ça marche.merci

  9. #9
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 895
    Points : 6 651
    Points
    6 651
    Par défaut
    header() ne peut pas fonctionner si tu envoies le moindre contenu avant lui, donc le code php censé le déclencher doit être placé avant <!DOCTYPE html> (ou quoi que ce soit d'autre d'ailleurs):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php // <-- doit coller au début du fichier
    session_start();
     
    if ( !isset($_SESSION['admin']) ) {
        header('Location: login.php');
     
        exit;
    }
     
    ?><!DOCTYPE html>...

  10. #10
    Membre à l'essai
    Femme Profil pro
    En formation
    Inscrit en
    Septembre 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : En formation

    Informations forums :
    Inscription : Septembre 2020
    Messages : 8
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par Kimamilaa Voir le message
    ok je vais essayer ca de suite et je reviens dire si ca marche.merci


    j'ai fait ca et ca fonctionnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnneeeee!!!!!

    milles merci à toi ert tous ceux qui y ont prété du temps!!!! je suis trop CONTENTEEEEEEEEEEE!!!!!!!

    une excellente journée et à charge de revanche

  11. #11
    Membre expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 790
    Points : 3 056
    Points
    3 056
    Par défaut
    Citation Envoyé par Kimamilaa Voir le message
    je suis trop CONTENTEEEEEEEEEEE!!!!!!!
    C'est ça le double effet kiss cool (pour les anciens)

    Programmer, c'est ça, construire quelque chose et Oh Merveille!, je suis le maître du monde, cela fonctionne :-D

    Bonne programmation et bonne évolution

  12. #12
    Membre chevronné
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 262
    Points : 1 928
    Points
    1 928
    Par défaut
    Oui mais en ce cas précis : est-ce bien l'espace manquant après "location" qui empêchait la redirection ?

    (N'oublie pas de taguer ce thread en Résolu )

    Pour couronner le tout je dirais que la joie de réussir est proportionnelle au temps passé à chercher ce qui pouvait bien clocher.

    Je confirme que j'ai bien des pages comportant des "header('Location')" très en aval du DOCTYPE HTML, avec entre du JS, et tout ça fonctionne très bien ; sauf entre autre chez 02switch.
    Je confirme aussi que j'avais consulté ça sur php.net etc.

    DS7

  13. #13
    Membre à l'essai
    Femme Profil pro
    En formation
    Inscrit en
    Septembre 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : En formation

    Informations forums :
    Inscription : Septembre 2020
    Messages : 8
    Points : 11
    Points
    11
    Par défaut
    etbien ce qui a fonctionné c'est le point d'exclamation avant isset et mettre un exit...
    dézoulé mais l'espace n'avait rien changé

    oui sacré second effet kisscool!!! j'ai enfin pû avancer...parce que si proche de devoir rendre le site pour le diplôme javoue que je commencais à bien paniquer! Je voulais tellement réussir à trouver l'erreur par moi même! Je crois que la prochaine fois j'attendrais pas 3 jours

    en tout cas encore un grand merci à vous, je m'attendais même pas à une seule réponse! Dans la formation dont je sors, tous les dev que j'ai rencontré étaient seuls dans leur coin et personne aidait personne, ca me fait voir un peu de solidarité dans ce milieu!!!

    une belle journée a tout ^^

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

Discussions similaires

  1. [@MVC] Projet Web ne fonctionne pas (erreur 404)
    Par Odawin dans le forum Spring Web
    Réponses: 3
    Dernier message: 28/02/2014, 19h48
  2. Expires dans le header ne fonctionne pas
    Par dauleb dans le forum Performance Web
    Réponses: 1
    Dernier message: 21/07/2012, 16h43
  3. QtDemo ne fonctionne pas (erreur 474)
    Par deebou dans le forum Débuter
    Réponses: 2
    Dernier message: 20/09/2011, 13h16
  4. Réponses: 16
    Dernier message: 01/02/2006, 19h09

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