XenaUndercover Posted October 15, 2010 Report Share Posted October 15, 2010 Hallo zusammen, ich würde gerne eine Ansicht anpassen auf abfrage einer Variablen. Das stand im meinem Template schon drin: <!-- RADIO START!--> {if $options_data.option_group_field == 'radio'} <tr class="headerrow"> <td align="left" colspan="2">{$options_data.option_group_name}:</td> </tr> {foreach key=key_data item=item_data from=$options_data.option_group_values} <tr class="{cycle values="contentrow1,contentrow2"}"> <td width="30%" align="left">{$item_data.text}:</td> <td width="70%" align="left">{$item_data.field}</td> </tr> {/foreach} {/if} <!-- RADIO END!--> Ich wollte das jetzt erweitern und vorher die Abfrage stellen: {if $options_data.option_group_name == 'Ölkühler:'} : irgendeine anweisung : {/if} Wenn ich die Variable {$options_data.option_group_name} ausgebe dann steht da "Ölkühler" drinn! Wenn ich Sie abfrage, gibt es immer ein FALSE. Er läuft einfach nicht in diese IF-Abfrage rein. Ich versteh das nicht. :-( Weiss jemand was da los ist? LG, Dani Link to comment Share on other sites More sharing options...
mzanier Posted October 15, 2010 Report Share Posted October 15, 2010 ausgebe dann steht da "Ölkühler" drinn! und warum hast du dann noch ein : in deiner if anweisung am ende ? Link to comment Share on other sites More sharing options...
XenaUndercover Posted October 15, 2010 Author Report Share Posted October 15, 2010 Das sollte nur als Beispiel für Quellcode sein. Wenn ich nichts ausführe in der If anweisung sehe ich nicht das sie funktioniert. ;-) {if $options_data.option_group_name == 'Ölkühler:'} {/if} LG, Dani Link to comment Share on other sites More sharing options...
amilo Posted October 15, 2010 Report Share Posted October 15, 2010 Ne, Herr Zanier meint innerhalb der If-Abfrage: {if $options_data.option_group_name == 'Ölkühler:'} MfG. Hansen Link to comment Share on other sites More sharing options...
XenaUndercover Posted October 15, 2010 Author Report Share Posted October 15, 2010 Sorry hab ich nicht gesehen. Ist beim testen mit reingekommen. Also noch mal: {if $options_data.option_group_name == 'Ölkühler'} {/if} Die {debug} Ausgabe gibt mir auch "Ölkühler" aus. :-( Ich teste und probiere schon seit Stunden und komme nicht weiter. Eigentlich ist sowas eine Basissache. LG, Dani Link to comment Share on other sites More sharing options...
mzanier Posted October 15, 2010 Report Share Posted October 15, 2010 datei in der richtigen codierung gespeichert ? utf8 ? man sollte hier nie einen vergleich auf namen machen, sondern wenn dann auf die ID. Link to comment Share on other sites More sharing options...
XenaUndercover Posted October 15, 2010 Author Report Share Posted October 15, 2010 Die Abfrage mit der ID hat jetzt geklappt. Vieeeeelen Dank. Dann muss das mit den String's doch irgend was besonderes sein. Ich hatte die Codierung auch mal auf UTF-8 umgestellt, das hatte aber auch nicht funktioniert. Das ganze sieht jetzt so aus: <!-- RADIO START!--> {if $options_data.option_group_field == 'radio'} {if $options_data.option_group_id == 8} <tr class="headerrow"> <td align="left" colspan="3">{$options_data.option_group_name}:</td> </tr> {foreach key=key_data item=item_data from=$options_data.option_group_values} <tr class="{cycle values="contentrow1,contentrow2,contentrow3"}"> <td width="30%" align="left">{$item_data.text}:</td> <td width="50%" align="left">{$item_data.field}</td> <td width="20%" align="left">{$item_data.option_weight} kg</td> </tr> {/foreach} {else} <tr class="headerrow"> <td align="left" colspan="2">{$options_data.option_group_name}:</td> </tr> {foreach key=key_data item=item_data from=$options_data.option_group_values} <tr class="{cycle values="contentrow1,contentrow2"}"> <td width="30%" align="left">{$item_data.text}:</td> <td width="70%" align="left">{$item_data.field}</td> </tr> {/foreach} {/if} {/if} <!-- RADIO END!--> Schönes WE LG, Dani Link to comment Share on other sites More sharing options...
amilo Posted October 15, 2010 Report Share Posted October 15, 2010 Ähmm jetzt muss ich nochmal nachfragen: 1.) Warum betreibst du überhaupt den Aufwand mit der If-Abfrage nur um eine 3.te Spalte einzufügen, für die du eine viel flexiblere Abfrage schreiben könntest? 2.) Und warum hast du oben contentrow 1-3 und unten nur 1 und 2? MfG. Hansen Link to comment Share on other sites More sharing options...
XenaUndercover Posted October 15, 2010 Author Report Share Posted October 15, 2010 Zur Frage 1: Wie würde denn die bessere Variante aussehen? Zur Frage 2: Ein Ausschnitt: {foreach key=key_data item=item_data from=$options_data.option_group_values} <tr class="{cycle values="contentrow1,contentrow2"}"> <td width="30%" align="left">{$item_data.text}:</td> <td width="70%" align="left">{$item_data.field}</td> </tr> {/foreach} cycle ist eine Smarty funktion. Die bestimmt nur den Farbwert der Zeilen. Mit contentrow3 sage ich das aller 3 Zeilen sich der Farbwert ändern soll. LG, Dani Link to comment Share on other sites More sharing options...
amilo Posted October 15, 2010 Report Share Posted October 15, 2010 Hi, Zu 2.) du hast mich falsch verstanden. Ich weiß schon was cycle values sind. Wie du das einsetzt macht nur keinen Sinn. Die contentrows sind wie der Name ja sagt Reihen / Zeilen. Was du aber hast sind 3 Spalten. Zu 1.) <!-- RADIO START!--> {if $options_data.option_group_field == 'radio'} <tr class="headerrow"> <td align="left" colspan="3">{$options_data.option_group_name}:</td> </tr> {foreach key=key_data item=item_data from=$options_data.option_group_values} <tr class="{cycle values="contentrow1,contentrow2,contentrow3"}"> <td width="30%" align="left">{$item_data.text}:</td> <td width="50%" align="left">{$item_data.field}</td> <td width="20%" align="left">{if $item_data.option_weight !=''}{$item_data.option_weight} kg{/if}</td> </tr> {/foreach} {/if} <!-- RADIO END!--> MfG. Hansen Link to comment Share on other sites More sharing options...
XenaUndercover Posted October 15, 2010 Author Report Share Posted October 15, 2010 Da hab ich wieder dazu gelernt :-) Danke schön. :-) Hab die Änderung eingebaut und ne menge Quelltext gespart. Link to comment Share on other sites More sharing options...
amilo Posted October 15, 2010 Report Share Posted October 15, 2010 Kein Problem. Die dritte contentrow musst du nur noch rauslöschen. MfG. Hansen Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.