Hallo,
ich frage mich grade, wie man einen Fragebogen sinnvoll und objektorientiert abbilden kann. Der Fragebogen besteht aus mehreren Fragen die jeweils mehrere Antworten haben. In Abhängigkeit der ausgewählten Antworten unterscheiden sich spätere Fragen, es kommen welche dazu, andere Fallen weg. So eine Art Baumstruktur.
Ich habe jetzt erstmal fragebogen, Frage und Antwort als Objekte abgebildet, simple Data-Container eigentlich:
Die Frage ist jetzt, wie bringe ich die "Auswahllogik" am besten unter. Wenn es nur einen Fragestrang gibt, ist das natürlich einfach, dann kann ich einfach alle Fragen dem Test-Container hinzufügen und die aktuelle jeweils anzeigen.
Bei Fragen mit Vorbedingung habe ich das jetzt so gemacht:
$answers (array) enthält die bisherigen Antworten. (Und steinigt mich nicht für das @, ist ja nur zum demonstireren 
)
Aber irgendwie gefällt mir die Möglichkeit nicht so recht. Gibt es da bessere Lösungen?
alxy
ich frage mich grade, wie man einen Fragebogen sinnvoll und objektorientiert abbilden kann. Der Fragebogen besteht aus mehreren Fragen die jeweils mehrere Antworten haben. In Abhängigkeit der ausgewählten Antworten unterscheiden sich spätere Fragen, es kommen welche dazu, andere Fallen weg. So eine Art Baumstruktur.
Ich habe jetzt erstmal fragebogen, Frage und Antwort als Objekte abgebildet, simple Data-Container eigentlich:
Code:
Test -hasMany-> Question -hasMany-> Answer
Bei Fragen mit Vorbedingung habe ich das jetzt so gemacht:
PHP-Code:
if (@$answers['AV'] == 'AV5' || @$answers['AV'] == 'AV6') {
$test->addQuestion($dauer);
$test->addQuestion($befristet);
}


Aber irgendwie gefällt mir die Möglichkeit nicht so recht. Gibt es da bessere Lösungen?
alxy
Kommentar