Seite 1 von 2

Wo könnte der Fehler bei ifVar liegen

Verfasst: Mo 25. Jul 2022, 12:08
von kay

Code: Alles auswählen

we:var type="text" name="Kategorie" />
Gibt korrekt ein „g“ aus

aber

Code: Alles auswählen

<we:ifVar match="g" name="Kategorie">Gesundheit im Beruf</we:ifVar>
bleibt Leer - warum?

Es geht um die Detailseite eines Objektes.

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Mo 25. Jul 2022, 12:14
von Finn
Moin, fehlt da nicht noch ein type im ifVar Tag?

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Mo 25. Jul 2022, 12:30
von kay
Finn hat geschrieben: Mo 25. Jul 2022, 12:14 Moin, fehlt da nicht noch ein type im ifVar Tag?
Ich dachte global ist default :-/

Ich habe aber global und document ausprobiert - ohne Erfolg.

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Mo 25. Jul 2022, 12:37
von Finn
Also wenn du den Feldinhalt vergleichen möchtest, musst du ifField nutzten.

Oder den Feldinhalt in eine Variable schreiben mit to="" nameto="".

Ich glaube du versuchst gerade einen Feldinhalt mit ifVar zu vergleichen.

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Mo 25. Jul 2022, 13:39
von kay
Finn hat geschrieben: Mo 25. Jul 2022, 12:37 Also wenn du den Feldinhalt vergleichen möchtest, musst du ifField nutzten.

Oder den Feldinhalt in eine Variable schreiben mit to="" nameto="".

Ich glaube du versuchst gerade einen Feldinhalt mit ifVar zu vergleichen.
Es ist ja ein Objekt da kann ich doch die Felder nur als Variable ausgeben.

Aber auch das funktionirt leider nicht:

Code: Alles auswählen

<we:ifField type="text" name="Kategorie" match="g" operator="equal">Gesundheit im Beruf</we:ifField>

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Mo 25. Jul 2022, 15:08
von WBTMagnum
Hallo Kay,

Kannst du mal den aktuellen, relevanten Code hier posten? Ist ein bisschen verwirrend, da am Anfang von Variablen jetzt aber von Fields gesprochen wird. Wir wird "Kategorie" jetzt gesetzt bzw. abgefragt?

Folgendes sollte für Variable ja gehen:

Code: Alles auswählen

<we:setVar type="global" name="Kategorie" value="g"/>
<we:ifVar type="global" name="Kategorie" operator="equal" match="g">Gesundheit im Beruf</we:ifVar>

HTH,
Sascha

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Mo 25. Jul 2022, 18:01
von kay
WBTMagnum hat geschrieben: Mo 25. Jul 2022, 15:08 Kannst du mal den aktuellen, relevanten Code hier posten? Ist ein bisschen verwirrend, da am Anfang von Variablen jetzt aber von Fields gesprochen wird. Wir wird "Kategorie" jetzt gesetzt bzw. abgefragt?
Alsooo,
ich habe eine Klasse in der kann über ein Feld eine Kategorie gewählt werden. (g,b und o).

Ich verwende auf der Ausgabeseite die Buchstaben für die Grafiken in einem Icon-font. num möchte ich aber auch noch Text daneben stehen haben.

Code: Alles auswählen

<we:var type="text" name="Kategorie" /> Hier wird wie erwartet das “g“ ausgegeben.
Wenn ich nun aber das verwende:

Code: Alles auswählen

<we:ifVar match="g" name="Kategorie" operator="equal"type="session">Gesundheit im Beruf<we:else>x</we:else></we:ifVar>
kommt Nichts :-/


Und hier wird komischerweise auch “Leer“ angezeigt

Code: Alles auswählen

<we:ifVarEmpty name="Kategorie" type="global">Leer</we:ifVarEmpty>

Wen ich mir die Variable per PHP anzeigennasse kommt das:
[Kategorie] => Array
(
[type] => select
[access] => access_s
[dat] => g
[len] => 255
)

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Mo 25. Jul 2022, 21:15
von mokraemer
Hallo Kay,
warum verwendest du denn type in allen Abfragen anders???
type="session" => $_SESSION[...]
type="global" => $GLOBALS[...]
In jedem Fall hilft es zu wissen welche Version du verwendest - es kann ja immer mal sein, das sich ein Fehler eingeschlichen hat oder korrigiert wurde.

Ich hab eben mal über die beiden Tags geschaut - so ganz gleich verhalten sie sich aktuell nicht - denke das sollten wir mal angleichen.

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Di 26. Jul 2022, 09:34
von kay
mokraemer hat geschrieben: Mo 25. Jul 2022, 21:15 Hallo Kay,
warum verwendest du denn type in allen Abfragen anders???
Nur zum Testen, eigentlich sollte ja Global richtig sein.

Version: 9.1.2 Barrhorn (9.1.2.0, Revision: 13844) offizieller Release

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Di 26. Jul 2022, 09:47
von WBTMagnum
Hallo Kay,

Es ist halt schwierig dir zu helfen, wenn da so ein Kuddelmuddel mit unterschiedlichen type-Attributen kommt. Es ist wichtig zu wissen, wie die Variable definiert ist, damit man die Abfrage auch entsprechend definieren kann.

Frage: Funktioniert folgender Code prinzipiell?
WBTMagnum hat geschrieben: Mo 25. Jul 2022, 15:08

Code: Alles auswählen

<we:setVar type="global" name="Kategorie" value="g"/>
<we:ifVar type="global" name="Kategorie" operator="equal" match="g">Gesundheit im Beruf</we:ifVar>

Liebe Grüße,
Sascha

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Di 26. Jul 2022, 10:30
von kay
Moin Sacha,
WBTMagnum hat geschrieben: Di 26. Jul 2022, 09:47 Es ist halt schwierig dir zu helfen, wenn da so ein Kuddelmuddel mit unterschiedlichen type-Attributen kommt. Es ist wichtig zu wissen, wie die Variable definiert ist, damit man die Abfrage auch entsprechend definieren kann.
Eigentlich gibt es kein Kuddelmuddel ;-)
Es geht um den Code am Anfang (alles andere war ja nur zum Tetsen)

Code: Alles auswählen

<we:ifVar match="g" name="Kategorie" operator="equal"type="global">Gesundheit im Beruf</we:ifVar>
auf einer anderen Seite habe ich das gleiche Problem:

Code: Alles auswählen

<we:ifVar match="Frau" name="Geschlecht" operator="equal" type="global">Dozentin</we:ifVar>
Auch hier habe ich in der Klasse ein Auswahlfeld (Frau,Mann,Div)

Der Code von Dir Funktioniert leider nicht :-/ Da wird die Ausgabe an der stelle abgebrochen.

Code: Alles auswählen

<we:setVar type="global" name="Kategorie" value="g"/>
<we:ifVar type="global" name="Kategorie" operator="equal" match="g">Gesundheit im Beruf</we:ifVar>

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Di 26. Jul 2022, 11:47
von WBTMagnum
kay hat geschrieben: Di 26. Jul 2022, 10:30 Der Code von Dir Funktioniert leider nicht :-/ Da wird die Ausgabe an der stelle abgebrochen.

Code: Alles auswählen

<we:setVar type="global" name="Kategorie" value="g"/>
<we:ifVar type="global" name="Kategorie" operator="equal" match="g">Gesundheit im Beruf</we:ifVar>
Mein Fehler. Das muss natürlich to/nameto lauten:

Code: Alles auswählen

<we:setVar to="global" nameto="Kategorie" value="g"/>
<we:ifVar type="global" name="Kategorie" operator="equal" match="g">Gesundheit im Beruf</we:ifVar>
Liebe Grüße,
Sascha

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Di 26. Jul 2022, 14:26
von mokraemer
ich denke wir können das we:ifVar Tag korrigieren, das es sich verhält wie we:var und dann braucht es keine komplizierten Umschreibereien in local/global oder sonst wo hin.

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Di 26. Jul 2022, 15:57
von kay
mokraemer hat geschrieben: Di 26. Jul 2022, 14:26 ich denke wir können das we:ifVar Tag korrigieren, das es sich verhält wie we:var und dann braucht es keine komplizierten Umschreibereien in local/global oder sonst wo hin.
Soll ich das in die Bugbase eintragen?

Re: Wo könnte der Fehler bei ifVar liegen

Verfasst: Di 26. Jul 2022, 19:10
von mokraemer
ja, dann haben wir das dokumentiert und du siehst auch wann es welchen Stand gibt.