0 votes
in SoSci Survey (dt.) by s156474 (110 points)

Hallo zusammen,

mein Fragebogen enthält ein Quiz, welches ich gerne auswerten möchte. Mich interessiert also nicht, was meine Probanden angeben, nur ob die Antwort richtig oder falsch ist.

Bisher habe ich folgenden Code verwendet:

$fragen = [
  'PM03' => 2,  
  'PM04' => 1,
  'PM05' => 2,  
];
 
$points = 1;
 
foreach ($fragen as $variable=>$correct) {
 
  $answer = value($variable);
  if ($answer == $correct) {
    $points + 1;  
  }
}
 
put('Q001_01', $points);

Leider wird in der internen variable: Q001_01 immer nur 1 Punkt angezeigt, auch wenn alle drei Antworten richtig gekreuzt worden sind. Woran kann das liegen?

Vielen Dank!

1 Answer

0 votes
by SoSci Survey (305k points)

Das liegt daran, dass Sie die Variable vorab mit dem Wert 1 definieren...

$points = 1;

... und anschließend nichts mehr daran ändern. Die folgende Zeile ...

$points + 1; 

... berechnet zwar den Wert von $points + 1, speichert das aber nirgends. Ich denke Sie meinen hier:

$points = $points + 1; 

Oder gleichbedeutend in Kurzschreibweise:

$points++; 

Vermutlich möchten Sie dann auch mit 0 beginnen statt mit 1.

by s156474 (110 points)
Vielen lieben Dank.

Leider hat das anpassen des Codes nur dafür gesogrt, dass in der internen Variable: Q001_01 nun immer eine 0 steht.

$fragen = [
  'PM03' => 2,  
  'PM04' => 3,
  'PM05' => 2,  

];
 
$points = 0;
 
foreach ($fragen as $variable=>$correct) {
 
  $answer = value($variable);

  if ($answer == $correct) {
    $points++;  
  }
}
 
put('Q001_01', $points);"

Gibt es eine andere mögliche Ursache für das Problem oder eine alternative Möglichkeit Fragen auszuwerten?

Vielen Dank!
by SoSci Survey (305k points)
Würden Sie bitte einmal die Debug-Information der Seite posten? Danke.
https://www.soscisurvey.de/help/doku.php/de:create:debugging

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

...