erste funktionsfähige Prüfung der Eingaben

This commit is contained in:
2024-12-16 13:16:35 +01:00
committed by Eric Blommel
parent 496522b4b4
commit 5a4ec524da
4 changed files with 145 additions and 15 deletions

39
webseite/check_answer.php Normal file
View File

@@ -0,0 +1,39 @@
<?php
require_once "classes/task.php";
header('Content-Type: application/json');
// Sicherheitsüberprüfungen hier (z.B. Authentifizierung)
// Eingaben validieren
$taskId = isset($_POST['task_id']) ? intval($_POST['task_id']) : null;
$variableIndex = isset($_POST['variable_index']) ? intval($_POST['variable_index']) : null;
$userAnswer = isset($_POST['user_answer']) ? trim($_POST['user_answer']) : '';
if ($taskId === null || $variableIndex === null || $userAnswer === '') {
echo json_encode(['success' => false, 'message' => 'Ungültige Eingaben.']);
exit;
}
// Laden Sie die Aufgaben und Variablen entsprechend Ihrer Datenstruktur
$tasks = $topicData->getTasks();
if (!isset($tasks[$taskId])) {
echo json_encode(['success' => false, 'message' => 'Aufgabe nicht gefunden.']);
exit;
}
$variables = $tasks[$taskId]->getVariables();
if (!isset($variables[$variableIndex])) {
echo json_encode(['success' => false, 'message' => 'Variable nicht gefunden.']);
exit;
}
$correctAnswer = strtolower(trim($variables[$variableIndex]->getCorrectAnswer()));
$userAnswerLower = strtolower($userAnswer);
if ($userAnswerLower === $correctAnswer) {
echo json_encode(['success' => true, 'message' => 'Richtig!']);
} else {
echo json_encode(['success' => false, 'message' => 'Falsch.']);
}