0 votes
in SoSci Survey (dt.) by s081673 (115 points)

Lieber Online-Support,

ich möchte mithilfe Ihres Tools über eine Umfrage Bewertungen zu Marken sammeln. Dies dient meinem Promotionsvorhaben. Die Umfrage soll später über mturk bzw. clickworker laufen.

Damit die Teilnehmer bei mir ihre die Beantwortung bestätigen können (und damit ihre Bezahlung erhalten), benötigen sie einen individuellen Code.

Bisher lief das ganz gut über den Zufallsgenerator und 2.000 Zettel*, die ich mit Codes versehen habe. Nun hat sich meine Anzahl der Marken erhöht, so dass ich rund 3.000 Teilnehmer befragen muss, entsprechend auch 3.000 Codes. Wenn ich allerdings 3.000 Zettel erstelle bzw. die Codes reinkopiere, wird die Änderung nicht gespeichert und am obigen Rand erscheint Zahlengewusel.

In Kurz: Was ist die maximale Anzahl von Zetteln, mit der oFb umgehen kann?
Ggf. erhebe ich die Daten in separaten Wellen.

Vielen Dank im Voraus!
UPh

*
Bisherige, funktionierende Lösung mit 2.000 Zetteln:

// Stop right now, if no more codes are available
if (value('CD01_CP') > 0) {
  text('quotafull');
  buttonHide();
  pageStop();
}

replace('%code%', 'CD01', 'response');
by s081673 (115 points)
Das "Zahlengewusel" ist tatsächlich diese Nachricht:

"Warning: Incomplete attribute JSON data found: {"data":"1 Z3U-L3S6-YECJ-34WB\r\n2 Z23-116S-3E34-H73B\r\n3 [...] \r\n39 Y39-95R2-5KF5-BN7B in /var/www/soscisurvey/html/inc/BasicObject.php on line 767"

1 Answer

+1 vote
by SoSci Survey (327k points)

Das vermeintliche Zahlengewusel sind Ihre ersten Codes im Zufallsgenerator - getrennt durch einen Zeilenumbruch (\r\n) und mit vorangestellten Zahlen. Offenbar haben Sie mit den knapp 3000 Codes die Speicherlänge von 64kb für den gesamten Inhalt des Zufallsgenerators überschritten.

Ein exaktes Limit für die Codes kann ich nicht geben, weil es von der Länge der einzelnen Einträge abhängt. Aber ich kann zwei Workarounds vorschlagen.

Workaround 1: Verwenden Sie eine Urne statt eines Zufallsgenerators. Diese Variante ist zwar nicht ganz so komfortabel, aber Urnen speichern die Daten intern anders und sollten auch mit einer größeren Anzahl von Zetteln kein Problem haben.

Workaround 2: Sie können für die restlichen 1000 Codes auch einen zweiten Zufallsgenerator anlegen. Und wenn der erste "leer" ist, dann ziehen sie aus dem zweiten. Das könnte etwa wie folgt aussehen:

question('RG01');  // Erster Zufallsgenerator
if (value('RG01_CP') == 0) {
  $code = value('RG01');
} else {
  question('RG02'); // Zweiter Zufallsgenerator
  if (value('RG02_CP') == 0) {
    $code = value('RG02');
  } else {
    // Nichts geht mehr
    text('quotafull');
    buttonHide();
    pageStop();
  }
}

html('<p>Ich Code: '.htmlspecialchars($code).'</p>');
by s081673 (115 points)
Vielen herzlichen Dank für Ihre schnelle Antwort. Ich werde es erstmal mit einem zweiten Zufallsgenerator versuchen. Falls sich dabei Probleme ergeben, weiß ich ja, dass ich hier gut beraten werde.

Nochmals vielen Dank!
UPh
by s081673 (115 points)
Lieber Online-Support,

mit dem zweiten Zufallsgenerator hat es nicht gleich auf Anhieb funkioniert, aber mit einer weiteren Urne im Fragebogen wird nun alles so ausgegeben, wie es soll. Vielen Dank nochmals!
UPh

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

...