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

  [Opened] Problème de '&' avec jUrl

Posted by webseb on 02/03/2008 00:06

Bonjour,

J'utilise dans une zone class menuZone extends jZone {

	protected $_tplname='menu';
	protected function _prepareTpl(){

        // prepare le tableau
    	$links = array(
    		jLocale::get("home~tabs.tabs.1") => jUrl::get('groups~default:index'),
    		jLocale::get("home~tabs.tabs.2") => jUrl::get('user:live'),
    		jLocale::get("home~tabs.tabs.3") => jUrl::get('home~default:index')
    	);

// envoi vers le template pour affichage (boucle foreach sur $links

    	$this->_tpl->assign('links',$links);

Normalement jURL renvoi bien :

<a href="http://www.domain.com/cgi?x=123&amp;y=456">

Dans le cas ci_dessus il renvoi:

<a href="http://www.domain.com/cgi?x=123&y=456">

qui n'est pas valide. (& au lieu de &amp; )

Est ce du a mon script ou est ce un bug. Merci

  [Opened] Re: Problème de '&amp;' avec jUrl

Reply #1 Posted by laurentj on 02/03/2008 11:21

Normalement jURL renvoi bien

Normalement, jUrl renvoi ce que tu lui demandes :-p Tu as un paramètre pour lui dire ce que tu veux exactement, sachant que le plugin de template jurl fait appel à jUrl avec une valeur précise de ce paramètre.

Bref, tout est de ta faute :-p (c'est bien de lire la doc de référence des fois ;-) )

Tu as donc plusieurs solutions. Soit ça :

 $links = array(
   jLocale::get("home~tabs.tabs.1") => jUrl::get('groups~default:index', jUrl::XMLSTRING),
   jLocale::get("home~tabs.tabs.2") => jUrl::get('user:live', jUrl::XMLSTRING),
   jLocale::get("home~tabs.tabs.3") => jUrl::get('home~default:index', jUrl::XMLSTRING)
 );

Soit ça

 $links = array(
   jLocale::get("home~tabs.tabs.1") => 'groups~default:index',
   jLocale::get("home~tabs.tabs.2") => 'user:live',
   jLocale::get("home~tabs.tabs.3") => 'home~default:index'
 );

Et dans le template

    {foreach $links as $libelle=>$action}
       <a href="{jurl $action}">{$libelle}</a>
    {/foreach}

Note que tu pourrais aussi faire ça

 $links = array(
   "home~tabs.tabs.1" => 'groups~default:index',
   "home~tabs.tabs.2" => 'user:live',
   "home~tabs.tabs.3" => 'home~default:index'
 );

    {foreach $links as $locale =>$action}
       <a href="{jurl $action}">{jlocale $locale}</a>
    {/foreach}

  [Opened] Re: Problème de '&amp;' avec jUrl

Reply #2 Posted by webseb on 02/03/2008 11:28

oupss ;-) Merci Laurent, je vais aller copier 1000 fois la doc de référence comme punition ;-)

Bon dimanche. Seb

 
Page
  1. Problème de '&amp;' avec jUrl