Mit der PHP-Funktion substr()
können Sie einen Teil aus einem String extrahieren
if (substr(strtolower(value('DE01_01')), 0, 5) == 'psych') {
question('DE02');
question('DE03');
}
... oder Sie suchen nach Teiltreffern
if (strpos(strtolower(value('DE01_01')), 'psych') !== false) {
question('DE02');
question('DE03');
}
Die doppelten Gleichheitszeichen nach dem Ausrufezeichen sind hier wichtig (!==
).
Damit lassen sich viele schöne String-Prüfungen bauen. Allerdings wäre es vielleicht sinnvoller, eine "Texteingabe mit Auswahlempfehlung" zu verwenden. Dort werden vorgegeben Antworten automatisch angeboten und kodiert.
Ich habe es auch mit einer Verknüpfung (s.u.) von Bedingungen versucht, aber auch hier kommt die Fehlermeldung, dass SE03 keinen Wert hat.
Das kommt daher, dass Sie nicht genug Klammern verwenden :) Wenn Sie die or
-Bedingung nochmal klammern, wird sie nicht mehr ausgeführt.
if (
(value('SE01') == 1) and
((value('SE03') == 2) or (value('SE03') == 3))
) {
question('SE04');
}
Wenn man es lieber noch etwas klarer haben will, kann man die Bedingungen auch schachteln.
if (value('SE01') == 1) {
if ((value('SE03') == 2) or (value('SE03') == 3)) {
question('SE04');
}
}
Und als dritte Option kann man die Warnung ignorieren. Es ist nur eine Warnung, dass man womöglich etwas falsch gemacht haben könnte. Die Teilnehmer werden die Warnung nicht sehen...