array getItems(string FrageKennung, string Vergleich, [int AntwortCode])
Mit Hilfe der Funktion getItems()
können Sie ermitteln, welche Items in einer Frage vorhanden sind oder welche Items einer Frage angekreuzt wurden.
Die Funktion gibt ein Array der Item-Kennungen zurück, z.B. (1,2,4,5,6,9,10). Diese Kennungen können mit dem Befehl question()
direkt in eine andere Frage übergeben werden. So kann man z.B. in einer zweiten Frage nur jene Items anzeigen, die eine Person vorher als relevant ausgewählt hat (z.B. nur Bewertung von Zeitschriften, die der Teilnehmer auch liest, s. Items in eine anderen Frage übernehmen).
Vergleich | Beschreibung |
---|---|
'all ' | Alle Items der Frage, nützlich z.B. für Randomisierung. Ein AntwortCode wird in diesem Fall nicht angegeben. |
'> ' | Listet alle Items auf, die einen Antwortcode größer als dem angegeben AntwortCode erhalten haben. So würde ein '> ' in Verbindung mit dem AntwortCode 3 in einer 5er-Skala nur jene Items heraussuchen, bei denen ein Wert über der Mitte angekreuzt wurde. |
'>=' oder 'min ' | Listet alle Items, die mindestens den angegeben AntwortCode erreicht haben. |
'<=' oder 'max ' | Items, die höchstens den AntwortCode erreicht haben. Items mit fehlenden Werten (z.B. „keine Antwort“), die technisch gesehen den Antwortcode -1 haben, werden hier allerdings nicht (!) gelistet. |
'< ' | Items, die eine gültige Antwort und weniger als den angegeben AntwortCode erreicht haben. |
'== ', '= ', 'is ' oder 'equal ' | Items, die genau einen gegebenen AntwortCode erreicht haben. |
'!=' , '<>' | Items, welche nicht diesen AntwortCode erhalten haben. |
'answered ' | Items, die beantwortet wurden. Hinweis: Diese Option ist für Mehrfachauswahl-Fragen nicht anwendbar, weil hier die Möglichkeit wegfällt, nicht zu antworten. |
'missing ' | Items, die nicht beantwortet bzw. übersehen wurden. |
'valid ' | Items, die eine gültige Antwort erhalten haben, also nicht leer belassen wurden oder eine Antwort „weiß nicht“ bekamen. Hinweis: Bei einer Mehrfachauswahl ist auch kein Kreuzchen eine gültige Antwort. Verwenden Sie hier '==' in Verbindung mit dem Antwortcode 2 , um die ausgewählten Optionen zu ermitteln. |
'invalid ' | Items, die leer belassen wurden oder ein „weiß nicht“ bekommen haben. |
Hinweis: Wie auch bei value()
kann diese Funktion Antworten des Teilnehmers erst auf der Seite nach einer Frage ermitteln. Verwendet man die Funktion auf derselben Seite wie die Frage, so funktioniert es nicht korrekt, weil die Antworten noch gar nicht mit „Weiter“ zum Server übermittelt wurden.
Im folgenden Beispiel wird auf Seite 1 die Frage AB01
gestellt, eine Matrixfrage (Skala), bei der für unterschiedliche Zeitschriften anzugeben ist, wie häufig der Befragte diese liest.
Auf der folgenden Seite 2 sollen dann in Frage AB02
nur jene Items zur Auswahl angeboten werden, die mindestens „selten“ (Antwortcode 2) genutzt werden.
Das Beispiel setzt voraus, dass AB02
genauso viele Items hat wie AB01
. Außerdem müssen zusammengehörige Items auch dieselben Kennung haben. So könnte das Item 1 in beiden Fragen „Spiegel“, das Item 2 in beiden Fragen „Stern“ sein.
Tipp: Am einfachsten erreicht man das, indem man eine Frage anlegt, dann die Frage dupliziert und in der Kopie nur noch Fragetyp und -texte ändert.
// Seite 2 // Items ermitteln, die mindestens selten (2) genutzt werden $itemliste = getItems('AB01', 'min', 2); // Nur diese Items in AB02 anzeigen question('AB02', $itemliste);
Auf Seite 3 soll nun Frage AB04
gestellt werden – aber nur für jene Items, die laut AB01
mindestens häufig genutzt werden (Antwortcode 3).
Auch Frage AB04
muss dieselben Items mit denselben Kennungen enthalten wie Frage AB01
.
// Seite 3 $itemlisteB = getItems('AB01', 'min', 3); // Nur diese Items in AB04 anzeigen question('AB04', $itemlisteB);
Tipp: Lesen Sie dazu auch das Kapitel Items in eine anderen Frage übernehmen.
// Liste der Items, für die genau "nie" ausgewählt wurde $itemliste = getItems('AB01', '==', 1); // Liste der Items, für die maximal "selten" gewählt wurde $itemliste = getItems('AB01', '<=', 2); // Liste aller Items mit gültiger Antwort $itemliste = getItems('AB01', 'valid'); // Liste aller Items der Frage $itemliste = getItems('AB01', 'all'); html('<p>Die Frage zeigt '.count($itemliste).' Items.</p>'); // Liste aller Items, die mit nie (1) oder täglich (4) beantwortet wurden $liste1 = getItems('AB01', '==', 1); $liste2 = getItems('AB01', '==', 4); $itemliste = array_merge($liste1, $liste2);
Im folgenden Beispiel wird die Kombination von getItems()
mit der PHP-eigenen Funktion count()
demonstriert. Die Funktion count()
verrät die Länge eines Arrays. Damit lässt sich z.B. überprüfen, ob mindestens eine bestimmte Anzahl von Items das Kriterium aus getItems()
erfüllt.
// Nicht beantwortete Items in Frage AB01 ermitteln $missing = getItems('AB01', 'missing'); // Wenn mindestens eines fehlt, dann soll die Frage erneut angezeigt werden if (count($missing) > 0) { question('AB01'); }
Tipp: Lesen Sie zum letzten Beispiel auch die Anleitung zur Funktion repeatPage()
.