Übersetzungen dieser Seite:
 

Dies ist eine alte Version des Dokuments!


getItems()

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).

  • FrageKennung
    Die Kennung der Frage, z.B. „AB01“
  • Vergleich
    Legt fest, nach welchem Kriterium die Items gelistet werden. Wichtig ist, dass der Modus in Anführungszeichen steht. Die möglichen Vergleichsmodi sind der folgenden Tabelle zu entnehmen.
VergleichBeschreibung
'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.
'answered'Items, die beantwortet wurden.
'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.

Items in andere Frage übernehmen

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.

Weitere Beispiele

// 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().

de/create/functions/getitems.1414004031.txt.gz · Zuletzt geändert: 22.10.2014 20:53 von admin
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki