---
title: "Einfache if-abfrage funktioniert nicht richtig- Syntax richtig?"
url: "https://www.typo3.net/d/97576-einfache-if-abfrage-funktioniert-nicht-richtig-syntax-richtig"
source: "typo3.net"
tags: ["TYPO3","TypoScript","Frage"]
created: "2010-03-16"
last_reply: "2010-03-21"
replies: 3
solved: false
page: 1
pages: 1
lang: "de"
---

# Einfache if-abfrage funktioniert nicht richtig- Syntax richtig?

TYPO3 › TypoScript · 3 Antworten · gestartet 2010-03-16

## Eröffnungsbeitrag

**seoman** · 2010-03-16 · [Beitrag #1](https://www.typo3.net/d/97576-einfache-if-abfrage-funktioniert-nicht-richtig-syntax-richtig/1)

Ich möchte gerne in der Ansicht der wt_directory für die Personen, die nicht ein Bild hinterlegt haben, ein Dummy-Bild ausgeben.
Die Lösung aus dem HowTo von Alex im T3-Forum funtkioniert aus irgendwelchen Gründen nicht. Deshalb habe ich den Code mal so verändert, also stark vereinfacht, um zu sehen, ob die reine Schleife funktioniert, und die funktioniert nicht, nur warum nicht? Hier der Code:

```typoscript
field.image >
field.image = COA
field.image {
     wrap = |
     10 = TEXT
     10.if.isTrue.field  = image
     10.value = Bild vorhanden
     20 = TEXT
     20.if.isFalse.field  = image
     20.value = kein Bild vorhanden
     }
```

So will ich einfach nur eine Textausgabe erreichen, die mir sagt, ob ein Bild vorhanden ist oder nicht. Wenn ein Bild vorhanden ist (also 10), wird die Ausgabe auch angezeigt, wird kein Bild hinterlegt, bekomme ich jedoch keine Anzeige (20 wird nicht angesteuert). Woran liegt das?

Hier noch der ursprüngliche TS-Code von Alex, der beenfalls nur das hinterglegte Bild ausgibt. Aber er scheint ja gar nicht erst in die False-Schleife einzulaufen (siehe mein Code oben):

```typoscript
field.image >
field.image = COA
field.image {
    wrap = |
    10 = IMAGE
    10.if.isTrue.field = image
    10.file {
        import.dataWrap = {$plugin.wtdirectory.path.ttaddress_pictures}
        import.field = image
        import.listNum = 0
        width = 60
        }
    20 = CASE
    20.if.isFalse.field = image
    20.key.field = gender
    20.m = IMAGE
    20.m.file = fileadmin/male.gif
    20.m.file.width = 60
    20.default = IMAGE
    20.default.file = fileadmin/female.gif
    20.default.file.width = 60
}
```

Weiß irgendwer Rat?
LG Andreas

## Antworten

### [#2](https://www.typo3.net/d/97576-einfache-if-abfrage-funktioniert-nicht-richtig-syntax-richtig/2) · Julian.​Hofmann · 2010-03-17

Hallo Andreas.

Die if-Eigenschaften sind immer wieder etwas merkwürdig (zumindest für meinen Geschmack). Eine bewährte Lösung ist, diese Eigenschaft daher zu umgehen  ;)

Nachdem Du einen Default-Wert für ein Objektwwillst, das ggf. durch ein bestehenden Feldinhalt ersetzt wird, ist meines Erachtens die override-Eigenschaft des stdWrap das Mittel der Wahl

> Wenn override etwas anderes als "" oder null zurückliefert, wird dieser Wert zum Inhalt.

D.h. es sollte klappen mit

```typoscript
field.image >
field.image = COA
field.image {
  10 = TEXT
  10.value = Bild nicht vorhanden
  10.override.field  = image
}
```

Viele Grüße
Julian

P.S: Dein wrap in Zeile 4 dürfte sinnlos sein, da COA selbst keine stdWrap-Eigenschaften hat, sondern nur via stdWrap diese bekommen kann (d.h. field.image**.stdWrap**.wrap)

### [#3](https://www.typo3.net/d/97576-einfache-if-abfrage-funktioniert-nicht-richtig-syntax-richtig/3) · ArminB · 2010-03-21

Deine if sieht ok aus.

Armin

### [#4](https://www.typo3.net/d/97576-einfache-if-abfrage-funktioniert-nicht-richtig-syntax-richtig/4) · seoman · 2010-03-21

Hallo Zusammen!

das ist ja wunderbar. Da habe ich jetzt zwei Afrage-Varianten, die funktionieren sollten, aber leider funktionieren sie beide nicht. :-( Irgendwie scheint das Typo3 da mit den leeren Datenbankfeldern Probleme zu machen. Er will einfach nicht in den else-Zweig rein.
 :(
LG Andreas

---

Quelle: „Einfache if-abfrage funktioniert nicht richtig- Syntax richtig?“, typo3.net, https://www.typo3.net/d/97576-einfache-if-abfrage-funktioniert-nicht-richtig-syntax-richtig
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
