0 votes
in SoSci Survey (dt.) by s278251 (140 points)
edited by SoSci Survey

Hallo,

es geht um folgendes Szenario. Ich habe in meiner Studie drei verschiedene Wahrnehmungstypen die in jeweils zwei Bedingungen untersucht werde. In der ersten Bedingung werden Form- und Grundseher verglichen, in der zweiten Bedingung, Form-, Figur- und Grundseher. Zu Beginn des Fragebogen wird dem Teilnehmenden eine dieser Typen zugewiesen.
Erste Bedingung = zufällig ausgewählter Wahrnehmungstyp im Vergleich mit einem anderen Wahrnehmungstyp
Zweite Bedingung = zufällig ausgewählter Wahrnehmungstyp im Vergleich mit zwei anderen Wahrnehmungstypen.
Zu Beginn der Studie werden die Teilnehmenden per Zufallsgenerator(MG17) den verschiedenen Bedingungen zugewiesen.

Diese Wahrnehmungstypen möchte ich im Laufe des Fragebogens vorstellen. Dazu habe ich 24 positive (p1-p24) und 24 negative (n1-n24) Sätze bereits in die Datenbank geladen. Nun habe ich eine Seite erstellt auf der ich zwei Zufallsgeneratoren VP26(positiv) und VN27(negativ) eingepflegt habe. Sie sind jeweils für die positiven und die negativen Sätze verantwortlich sind, die Zettel sind bereits in den Generatoren hinterlegt.
Hier ist der Code:

if (value('MG17') == 1) {
  text('MG20');
} if (value('MG17') == 2) {
  text('MG18');
} if (value('MG17') == 3) {
  text('MG20');
} if (value('MG17') == 4) {
  text('MG19');
} if (value('MG17') == 5) {
  text('MG18');
}

for ($i=1; $i<=5; $i++) {
  $varID = id('VN27', $i);  // Findet den Variablennamen, z.B. VN26x1



 $key = 'n'.value($varID);
  $inhalt = dbGet($key);
  html('
    <h2>'.$inhalt[0].'</h2>
  ');
  
}

for ($i=1; $i<=5; $i++) {
  $varID = id('VP26', $i);  // Findet den Variablennamen, z.B. VN26x1


 $key = 'p'.value($varID);
  $inhalt = dbGet($key);
  html('
    <h2> '.$inhalt[0].' </h2>
  ');
  
}

Dieser Code zeigt mir die Sätze untereinander auf einer Seite an und da ich diesen Code kopiere und auf der darauffolgenden Seite wieder benutze um den nächsten Wahrnehmungstyp zu beschreiben, doppeln sich leider manchmal die Sätze für verschieden Wahrnehmungstypen.

Meine Frage ist also, wie kann ich diese Sätze in zufälliger Reihenfolge (auch positiv, negativ abwechselnd) auf einer Seite anzeigen um einen Wahrnehmungstyp zu beschreiben? Wie kann ich weiterhin dafür sorgen, dass ich für die anderen Wahrnehmungstypen ( ein anderer oder zwei andere, abhängig von der Bedingung) auf der/den folgenden Seiten nicht nochmal die gleichen Sätze auswähle sondern andere (keine Dopplungen)?

Ich hoffe meine Frage ist verständlich gestellt.
Ich freue mich sehr über eine Rückmeldung!

1 Answer

0 votes
by SoSci Survey (306k points)
edited by SoSci Survey

Danke für die vollständige Darstellung. Beginnen wir mal mit dem ersten Problem, dem Mischen. Legen Sie doch bitte in den dritten Zufallsgenerator (s. Ihre andere Frage) die Kennungen der Variablen, die Sie im Zufallsgenerator ziehen:

VP26x01
VP26x02
VP26x03
VP26x04
VP26x05
VN27x01
VN27x02
VN27x03
VN27x04
VN27x05

Stellen Sie ein, dass Sie pro Interview (alle) 10 Zettel ziehen möchten. Nehmen wir mal an, der Zufallsgenerator heißt FR01, dann würden Sie hiermit eine Liste der Variablen in zufälliger Reihenfolge bekommen:

$vars = valueList('FR01', NULL, 'label');

Diese Liste kann man nun einfach abarbeiten anstatt Ihrer FOR-Schleifen:

foreach ($vars as $varID) {
  $key = value($varID, 'label');
  $inhalt = dbGet($key);
  html('
    <h2> '.$inhalt[0].' </h2>
  ');  
}

Nur die p's und n' müssen Sie dann noch in in VN26 und VN27 hinterlegen, damit es klappt.

Und jetzt zum zweiten Problem mit zwei weiteren solchen Seiten: Ziehen Sie in VN26 und VN27 nicht nur jeweils 5, sondern 3 x 5 = 15 Codes. Und dann legen Sie noch zwei weitere "dritte" Zufallsgeneratoren an - und schreiben Sie die weiteren Variablenlabels hinein, also in den zweiten "dritten" dann...

VP26x06
VP26x07
VP26x08
VP26x09
VP26x10
VN27x06
VN27x07
VN27x08
VN27x09
VN27x10

Dadurch dass jede Kennung von den beiden Zufallsgeneratoren nur einmal gezogen wird, verhindern Sie Dopplungen.

by s278251 (140 points)
Meine Zufallsgeneratoren heißen VN27 und V**P**26. ist das oben richtig dargestellt?

Wenn ich den oben genannten Code eingebe, dann bekomme ich folgende Fehlermeldung sobald ich den Fragebogen probehalber durchklicke;

Für den Schlüssel 19 liegen in der Datenbank keine Daten vor.
Hinweis (Seite 8)
Für den Schlüssel 15 liegen in der Datenbank keine Daten vor.
Warnung (Seite 8)
Die Variable VN26x01 wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt. Daher kann die Funktion value() keinen Antwort-Wert ermitteln.
Warnung (Seite 8)
In der Funktion dbGet() wurde kein gültiger Datenbank-Schlüssel angegeben, sondern .
Warnung (Seite 8)
Die Variable VN26x05 wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt. Daher kann die Funktion value() keinen Antwort-Wert ermitteln.
...

Ich verstehe nicht ganz woran das liegt, denn die p's und n's sind bereits in den Zufallsgeneratoren hinterlegt. Es wirkt so, als würde der Code keine p's und n's ausspucken?

Zum Verständnis, auf meiner Fragebogenseite steht nun folgender Code;

if (value('MG17') == 1) {
  text('MG18');
} if (value('MG17') == 2) {
  text('MG20');
} if (value('MG17') == 3) {
  text('MG19');
} if (value('MG17') == 4) {
  text('MG18');
} if (value('MG17') == 5) {
  text('MG20');
}


$vars = valueList('FR01', NULL, 'label');

foreach ($vars as $varID) {
  $key = value($varID);
  $inhalt = dbGet($key);
  html('
    <h2> '.$inhalt[0].' </h2>
  ');  
}

Was kann ich tun?
by SoSci Survey (306k points)
>Meine Zufallsgeneratoren heißen VN27 und V**P**26. ist das oben richtig dargestellt?

Nein, natürlich nicht :)

> Für den Schlüssel 19 liegen in der Datenbank keine Daten vor.

Da fehlte noch ein 'label' im value()-Befehl, ich ergänze das oben gleich.
by s278251 (140 points)
Vielen Dank für die Hilfe, es funktioniert nun!

Eine Kleinigkeit wüsste ich noch gerne; die Sätze werden nun in einer großen Schriftgröße angezeigt, gibt es die Möglichkeit diese zu verkleinern/ in der Schriftgröße anzuzeigen die normale Textelemente auf der Seite haben?
by SoSci Survey (306k points)
Sie haben mittels <h2> die Formatierung für Überschriften zweiten Grades verwendet. Wenn Sie stattdessen einen Absatz mittels <p>...</p> ausgeben, erfolgt das in der Standard-Schrift des Layouts.

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

...