[OPGELOST] dubbele if/else smarty werkt niet

Nederlandse ondersteuning voor CMS Made Simple

Moderator: velden

Post Reply
brentnl
Power Poster
Power Poster
Posts: 493
Joined: Mon May 11, 2009 4:35 pm

[OPGELOST] dubbele if/else smarty werkt niet

Post by brentnl »

Hallo, ik heb de volgende code geschreven, maar enkel de eerst div krijgt inhoud zegmaar.. Dat komt volgens mij omdat ik dezelfde if/else functie gebruik.. hoe kan ik dit voorkomen?

Code: Select all

	<div>
	{if $item->locatie_namevalue === 'Lunenburg'}
	{cms_module module="verkoopsysteem" query="3"}
	{elseif $item->locatie_namevalue === 'De Linde'}
	{cms_module module="verkoopsysteem" query="11"}
	{elseif $item->locatie_namevalue === 'Ambianz'}
	{cms_module module="verkoopsysteem" query="5"}
	{elseif $item->locatie_namevalue === 'De Kelder'}
	{cms_module module="verkoopsysteem" query="1"}
	{elseif $item->locatie_namevalue === 'The Level'}
	{cms_module module="verkoopsysteem" query="13"}
	{else}
	<p>Er zijn nog geen promotors bekend voor dit feest.</p>
	{/if}
	</div>
	
	<div>
	{if $item->locatie_namevalue === 'Lunenburg'}
	{cms_module module="verkoopsysteem" query="8" listtemplate="winkels"}
	{elseif $item->locatie_namevalue === 'De Linde'}
	{cms_module module="verkoopsysteem" query="10" listtemplate="winkels"}
	{elseif $item->locatie_namevalue === 'Ambianz'}
	{cms_module module="verkoopsysteem" query="9" listtemplate="winkels"}
	{elseif $item->locatie_namevalue === 'De Kelder'}
	{cms_module module="verkoopsysteem" query="7" listtemplate="winkels"}
	{elseif $item->locatie_namevalue === 'The Level'}
	{cms_module module="verkoopsysteem" query="14" listtemplate="winkels"}
	{else}
	<p>Er zijn nog geen winkels bekend voor dit feest.</p>
	{/if}
	</div>
Last edited by brentnl on Tue Oct 05, 2010 10:35 pm, edited 1 time in total.
Jos
Support Guru
Support Guru
Posts: 4019
Joined: Wed Sep 05, 2007 8:03 pm

Re: dubbele if/else smarty werkt niet

Post by Jos »

Probeer het eens met == in plaats van ===
brentnl
Power Poster
Power Poster
Posts: 493
Joined: Mon May 11, 2009 4:35 pm

Re: dubbele if/else smarty werkt niet

Post by brentnl »

Jos wrote: Probeer het eens met == in plaats van ===
geen verschil. had ik zelf namelijk ook al geprobeerd helaas..
Jos
Support Guru
Support Guru
Posts: 4019
Joined: Wed Sep 05, 2007 8:03 pm

Re: dubbele if/else smarty werkt niet

Post by Jos »

Het moet in dit geval wel == zijn...

Maar om op je probleem terug te komen.. het kan zijn dat de smarty variabele $item->locatie_namevalue zijn waarde verliest na de aanroep van {cms_module module="verkoopsysteem" query="..."}

Wat je kunt doen is de waarde van $item->locatie_namevalue eerst in een andere variabele zetten, en vervolgens die variabele in je if-statements gebruiken.

Dat doe je met bijvoorbeeld

Code: Select all

{assign var='mypromotor' value=$item->locatie_namevalue}
waarna je de variabele $mypromotor beschikbaar hebt.

zie ook http://www.smarty.net/manual/en/languag ... ion.assign
brentnl
Power Poster
Power Poster
Posts: 493
Joined: Mon May 11, 2009 4:35 pm

Re: dubbele if/else smarty werkt niet

Post by brentnl »

dat ik daar niet zelf aan gedacht heb... het werkt inderdaad. thanks!  ;D

Hoe kan alleen zo'n standaard tag als $item->..  zijn 'waarde' verliezen?
Jos
Support Guru
Support Guru
Posts: 4019
Joined: Wed Sep 05, 2007 8:03 pm

Re: [OPGELOST] dubbele if/else smarty werkt niet

Post by Jos »

De module-aanroep zorgt ervoor dat er smarty-variabelen worden gedefinieerd. Dat kan dus ook heel makkelijk de variabele $item betreffen, waardoor die dus overschreven wordt met andere waarden.

vandaar...
Post Reply

Return to “Dutch - Nederlands”