Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] comment récupérer l'url demandée

Posted by Dubphil on 02/22/2008 17:37

Bonjour,

lorsqu'un utilisateur clique sur ce lien http://www.example.com/index.php?module=mymodule&action=index il est redirigé sur le formulaire de login (http://www.example.com/index.php?module=user&action=login:form) et si l'authentification réussi il est redirigé sur l'url d'origine : http://www.example.com/index.php?module=mymodule&action=index, là ou je coince c'est comment récupérer cette valeur : /index.php?module=mymodule&action=index, $_SERVER['HTTP_REFERER'] est vide et $_SERVER['REQUEST_URI'] correspond à cette valeur : /index.php?module=user&action=login:form

voici la méthode form de mon controlleur d'authentification :

 function form() {
         $tpl = new jTpl();
         $rep = $this->getResponse('html');

         if (isset($_SERVER['HTTP_REFERER'])){
          $tpl->assign('referer', $_SERVER['HTTP_REFERER']);
          }
         else{
          $tpl->assign('referer', '');
          }

         $rep->body->assign('CONTENT', $tpl->fetch('login'));
         return $rep;
     }

J'imagine que pour récupérer la bonne url avec $_SERVER['REQUEST_URI'] il faudrait que je place $tpl->assign('referer', $_SERVER['REQUEST_URI']); avant l'appel de la méthode form(), mais où ça alors ?

Philippe

  [Opened] Re: comment récupérer l'url demandée

Reply #1 Posted by laurentj on 02/24/2008 10:00

lorsqu'un utilisateur clique sur ce lien http://www.example.com/index.php?module=mymodule&action=index il est redirigé sur le formulaire de login (http://www.example.com/index.php?module=user&action=login:form)

Ce n'est pas une redirection HTTP, mais une redirection interne. Donc tu ne trouveras rien dans $_SERVER'HTTP_REFERER'.

Pour récupérer l'url actuellement demandée, voici le moyen "le plus simple"

   $req = $GLOBALS['gJCoord']->request;
   $url = new jUrl($req->urlScript, $req->params, $req->urlPathInfo);
   $urlstring = $url->toString();
 
Page
  1. Re: comment récupérer l'url demandée