65 lines
No EOL
2.5 KiB
PHP
65 lines
No EOL
2.5 KiB
PHP
<?php
|
|
include $_SERVER["DOCUMENT_ROOT"] . "/php/scripts.php";
|
|
if (!checkLogin()) {
|
|
jsonMsg("Nie jesteś zalogowany");
|
|
exit();
|
|
}
|
|
if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST["generateQuestion"])) {
|
|
$conn = connectDB();
|
|
if (!isset($_POST["random"])) echo jsonMsg("Błąd, nie wybrano typu wyboru pytania");
|
|
if ($_POST["random"] == "true") {
|
|
$stmt = $conn->prepare("SELECT QID FROM questions ORDER BY rand() LIMIT 1");
|
|
$stmt->execute();
|
|
$stmt->bind_result($selectedQID);
|
|
$stmt->fetch();
|
|
$stmt->close();
|
|
} else {
|
|
$selectedQID = (int) $_POST["QID"];
|
|
$stmt = $conn->prepare("SELECT QID FROM questions WHERE QID = ?");
|
|
$stmt->bind_param("i", $selectedQID);
|
|
$stmt->execute();
|
|
$stmt->store_result();
|
|
if ($stmt->num_rows != 1)
|
|
jsonMsg("Nie ma pytania w bazie o nr $selectedQID");
|
|
$stmt->close();
|
|
}
|
|
$stmt = $conn->prepare("SELECT QID, content, answerA, answerB, answerC, answerD FROM questions WHERE QID = ?");
|
|
$stmt->bind_param("i", $selectedQID);
|
|
$stmt->execute();
|
|
$stmt->bind_result($QID, $content, $answerA, $answerB, $answerC, $answerD);
|
|
$stmt->fetch();
|
|
$result["question"] = [
|
|
"QID" => $QID,
|
|
"content" => $content,
|
|
"answerA" => $answerA,
|
|
"answerB" => $answerB,
|
|
"answerC" => $answerC,
|
|
"answerD" => $answerD
|
|
];
|
|
$stmt->close();
|
|
$conn->close();
|
|
$result["msg"] = "Wygenerowano pytanie o nr $selectedQID";
|
|
echo json_encode($result);
|
|
} else if ($_SERVER['REQUEST_METHOD'] == "POST" && isset($_POST["checkQuestion"])) {
|
|
$conn = connectDB();
|
|
$stmt = $conn->prepare("SELECT QID, answerChar FROM questions WHERE QID = ?");
|
|
$stmt->bind_param("i", $_POST["QID"]);
|
|
$stmt->execute();
|
|
$stmt->bind_result($QID, $correctChar);
|
|
$stmt->fetch();
|
|
$stmt->close();
|
|
$answerChar = $_POST["answer"];
|
|
$correct = $_POST["answer"]==$correctChar;
|
|
$result = ["QID" => $QID, "answeredChar" => $answerChar, "correct" => $correct, "correctChar" => $correctChar];
|
|
if (isset($_POST["save"]) && isset($_SESSION["username"])) {
|
|
$stmt = $conn->prepare("INSERT INTO questionAnswers (QID, answerChar, correct, UID) VALUES (?, ?, ?, ?)");
|
|
$stmt->bind_param("isii", $QID, $answerChar, $correct, $_SESSION["UID"]);
|
|
$stmt->execute();
|
|
$stmt->close();
|
|
}
|
|
$conn->close();
|
|
$result["status"] = "OK";
|
|
$result["msg"] = "Ukończono pomyślnie";
|
|
echo json_encode($result);
|
|
} else
|
|
jsonMsg("Nieprawidłowy request"); |