0 votes
in SoSci Survey (dt.) by s076519 (150 points)

Hallo zusammen,

ich hänge an einem Problem, für das es denke ich eine relativ einfache Lösung geben dürfte. Allerdings kann ich diese selbst im Moment nicht finden.

Die VP sollen im ersten Schritt 10 Items aus 'BE01' bewerten. Anschließend sollen die Items mit den beiden höchsten Antworten gespeichert werden und basierend darauf sollen dann jeweils andere Items mit der selben Nummer in 'BE02' angezeigt werden. Mit den Hilfeseiten konnte ich dieses Vorhaben bereits umsetzen:

$values = valueList('BE01');
arsort($values);
$order = array_keys($values);
$threshold = $values[$order[1]];
$greater = array();
$equal = array();
foreach ($values as $varID => $value) {
$itemID = (int)ltrim(substr($varID, 5), "0");
if ($value > $threshold) {
$greater[] = $itemID;
} elseif ($value == $threshold) {
$equal[] = $itemID;
}
}
shuffle($equal);
$needed = 2 - count($greater);
$items = array_merge($greater, array_slice($equal, 0, $needed));
question('BE02', $items);

Was jetzt noch fehlt ist Folgendes: Ich möchte, dass die VP die beiden Items, die in $items gespeichert sind, d.h. die beiden Items mit der höchsten Bewertung aus 'BE01', auf der nächsten Seite inklusive der von Ihnen ausgewählten Bewertung präsentiert bekommen. Dabei sollen die VP die Antworten allerdings nicht mehr verändern können.

Das heißt der Gedanke wäre: "Hier siehst du die beiden von dir ausgewählten Items mit der höchsten Bewertung." Dann folgt der Klick zur nächsten Seite des Fragebogens, wo eben die entsprechenden Items aus 'BE02' angezeigt werden.

Vielen Dank im Voraus!

1 Answer

+1 vote
by SoSci Survey (308k points)
selected by s076519
 
Best answer

Im einfachsten Fall verwenden Sie dafür die Funktion answers(). Das könnte so aussehen:

$items = getItems('BE02', 'valid');
anwers('BE02', $items);
by s076519 (150 points)
Vielen Dank, das war sehr hilfreich! Gibt es denn auch die Möglichkeit, dass der Fragentext dann nicht mehr angezeigt wird?
by SoSci Survey (308k points)
Das ist bisher nicht vorgesehen ... aber mit folgendem PHP-Befehl sollten Sie den Text zumindest ausblenden können.

pageCSS('
    #BE02_prn div.title {
        display: none;
    }
    #BE02_prn div.s2items {
        border-top: 0 none;
    }
');

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

...