0 votes
in SoSci Survey (dt.) by s126130 (225 points)

Hallo liebes SosciSurvey-Team

Ich verwende in meiner Survey eine Skala, die sich auf das Vaterschaftsideal von Vätern, Stiefvätern und Adoptivvätern bezieht. Ich habe das aus Darstellungsgründen so gelöst, dass ich die einzelnen Items der Skala zu jeweils einer eigenen Frage erklärt habe. Je nachdem wie die Familienkonstellation in einer Anfangsfrage beschrieben wurde, erscheinen dann unter den einzelnen Fragen die jeweiligen Vaterfiguren samt einer Einschätzungsskala (Extrema beschriften). Das sieht so aus:

Nun lasse ich die insgesamt 13 Aussagen über zwei Seiten rotieren. Das funktioniert auch ohne Probleme mit folgendem Code:

if (!isset($fragen)) {
  // Liste der Frage-Kennungen erstellen
  $fragen = array(
    'VI04', 'VI06', 
    'VI07', 'VI08', 
    'VI09', 'VI10', 
    'VI11', 'VI12', 
    'VI13', 'VI14', 
    'VI15', 'VI16', 
    'VI17'
  );
  shuffle($fragen);
  registerVariable($fragen);
}
 
question($fragen[0]);
question($fragen[1]);
question($fragen[2]);
question($fragen[3]);
question($fragen[4]);
question($fragen[5]);
question($fragen[6]);

Je nach Filterbedingung, möchte ich allerdings nun manchmal einzelne Items (d.h. in diesem Fall Personen) aus der Frage herausnehmen. Das ist in meinem Fall allerdings problematisch, da ich eine Ausweichbedingung "verstorben" zu einer Offenen Nennung hinzugefügt habe und diese nun mittels PHP-Code als Filter verwenden möchte:

Zum Beispiel bedeutet das nun, dass sobald zum Beispiel der Stiefvater bei der Frage zum Alter der Bezugspersonen als verstorben angegeben wird, er auch nicht mehr in den oben genannten rotierten Fragen als Item auftaucht. Wie bekomme ich das hin, ohne die Rotation zu unterbrechen?

Viele Grüße und vielen Dank schon mal.

1 Answer

0 votes
by SoSci Survey (304k points)
selected by s126130
 
Best answer

dass sobald zum Beispiel der Stiefvater bei der Frage zum Alter der Bezugspersonen als verstorben angegeben wird, er auch nicht mehr in den oben genannten rotierten Fragen als Item auftaucht.

Kein Problem, nachdem alle Ihre Fragen die gleichen 3 Items haben. Definieren Sie ein Array, welche Items angezeigt werden sollen. Ich gehe hier einmal davon aus, dass die Frage nach dem Alter die Annung AL01 hat.

$items = [];
if (value('AL01_02a') != 2) {
  $items[] = 1;
}
if (value('AL01_04a') != 2) {
  $items[] = 2;
}
if (value('AL01_05a') != 2) {
  $items[] = 3;
}

Dieses Array binden Sie dann bei allen Fragen ein:

question($fragen[0], $items);
question($fragen[1], $items);
question($fragen[2], $items);

Am Rande: Es scheint mir, dass Ihre Beschrifutng der Skala "... gar nicht zustimmen." mit Fortsetzungspunkten und Punkt am Ende so gar nicht zu den Items passt. Ich empfehle ein "stimme gar nicht zu" - das hat sich in vielen Studien bewährt :)

by s126130 (225 points)
Vielen Dank für die schnelle Antwort.
Auf der ersten Seite funktioniert das sehr gut, auf der zweiten Seite werden die items allerdings nicht erkannt. Folgende Fehlercodes treten auf

"Fehler im Fragebogen: Die PHP-Variable $items wurde verwendet, in diesem PHP-Code aber noch nicht definiert (sie enthält noch keinen Wert).

PHP-Code

001 namespace s2survey\questionnaire\environment;
002
003 question($fragen[7],$items);
004 question($fragen[8],$items);
005 question($fragen[9],$items);
006 question($fragen[10],$items);

Das liegt vermutlich daran, dass ich ziemlich neu bin auf diesem Gebiet und das array nicht richtig in den Code eingebunden habe. Wie bekomme ich das hin?
by SoSci Survey (304k points)
> Fehler im Fragebogen: Die PHP-Variable $items wurde verwendet, in diesem PHP-Code aber noch nicht definiert

Sie können die Variable entweder auf Seite 2 erneut definieren (mit dem gleichen Code) oder Sie können Sie unter dem o.g. Code mittels registerVariable() für die folgenden Seiten verfügbar machen.

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...