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 :

redirection vers autre page avec adresse relative


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut redirection vers autre page avec adresse relative
    Bonjour,

    je souhaite faire ce que j'indique dans le titre. J'ai essayé header('Location:'.dirname(__DIR__).'/includes/calendar.php'); (sachant que j'ai l'arborescence :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    racine
    ----admin/mapage.php
    ----includes/calendar.php
    mais pas de redirection et
    cette page ne peut s'afficher
    . Quelle est la bonne méthode ?

  2. #2
    Membre émérite
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Points : 2 522
    Points
    2 522
    Par défaut
    __DIR__ fait référence à un répertoire. Or il te faut une URL. Essaie avec $_SERVER['HTTP_HOST'] ?

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Une redirection s'est vers une URL, pas vers un chemin sur le disque.

  4. #4
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par badaze Voir le message
    __DIR__ fait référence à un répertoire. Or il te faut une URL. Essaie avec $_SERVER['HTTP_HOST'] ?
    The requested URL /cal/admin/localhost/includes/calendar.php was not found on this server.
    Citation Envoyé par sabotage Voir le message
    Une redirection s'est vers une URL, pas vers un chemin sur le disque.
    Effectivement, c'est pas une redirection qu'il faut que je fasse. Mais je voudrais ouvrir ce fichier. Comment faire ?

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    une inclusion ? require() ?

  6. #6
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Oui en effet ; par contre sur ce fichier il y a un session_start() et évidemment un warning "session_start(): Cannot send session cache limiter - headers already sent". Pour ne pas avoir ça, je voudrais tester si ça a déjà été fait. J'ai trouvé une vieille discussion : https://www.developpez.net/forums/d4...nce-d-session/ mais si je rajoute ce flag mais du coup plus de message d'erreur mais page blanche et pas de include ; donc comment faire ?

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    La bonne chose à faire est déjà de se demander s'il est cohérent que ce fichier soit parfois inclus par un autre script, parfois appelé indépendamment.
    Si en fait il n'est jamais appellé tout seul, il n'a pas besoin de démarrer une session.

    Sinon il n'y a pas besoin de flag
    http://php.net/manual/fr/function.session-status.php

  8. #8
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    1- on n'a toujours pas compris ce que tu veux faire exactement.

    2- si c'est bien une redirection :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    require(dirname(__DIR__).'/config/config.php');
    header('Location:'.SITE_URL_HTTP.'/includes/calendar.php');

    Où tu auras préalablement défini la constante SITE_URL_HTTP avec 'http://www.ton-site.com' dans config.php.

    3-
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php if ( empty( session_id() ) ) { session_start(); } ?>
    Fonctionne même si le fichier est inclus.

  9. #9
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Désolé d'avoir été silencieux.

    1- J'ai d'abord voulu écouter Sabotage, donc décider de déporter le session_start dans un fichier séparé et le faire donc une seule fois mais je ne m'en suis pas sorti.

    2- J'ai quand même effectué une redirection (vers une page qui inclue le fichier que je voulais ouvrir)

    3- Du coup, mon problème est résolu et je suis tombé sur un tout autre problème sur lequel je suis maintenant...

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

Discussions similaires

  1. Redirection vers une page avec des données en post
    Par TokTokTok dans le forum GWT et Vaadin
    Réponses: 3
    Dernier message: 11/03/2013, 17h31
  2. Redirection vers une page avec CommandLink
    Par Doudoupe dans le forum JSF
    Réponses: 4
    Dernier message: 06/02/2013, 15h11
  3. [Débutant] redirection vers une autre page avec GridView
    Par imenamouna dans le forum ASP.NET
    Réponses: 4
    Dernier message: 09/08/2012, 22h44
  4. Redirection vers une page, avec des arguments
    Par ::Fistons dans le forum JSF
    Réponses: 3
    Dernier message: 29/07/2007, 16h25
  5. Redirection vers un page avec variable en parametre
    Par gwendy dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 17/10/2005, 19h49

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