Show sourcecode
The following files exists in this folder. Click to view.
webbserverprogrammering/submissions/projekt-quiz/admin/
admin_login.php
admin_manage_quiz.php
admin_manage_users.php
admin_panel.php
admin_statistics.php
make_admin.php
admin_manage_quiz.php
86 lines UTF-8 Unix (LF)
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
<?php
session_start();
require_once '../includes/db_connect.php';
// Kontrollera att admin är inloggad
if (!isset($_SESSION['admin_logged_in']) || $_SESSION['admin_logged_in'] !== true) {
header("Location: admin_login.php");
exit();
}
// Radera quiz
if (isset($_POST['delete_quiz'])) {
$quiz_id = $_POST['quiz_id'];
$stmt = $pdo->prepare("DELETE FROM quizzes WHERE id = :id");
$stmt->execute([':id' => $quiz_id]);
$_SESSION['success'] = "Quiz raderat!";
header("Location: admin_manage_quiz.php");
exit();
}
// Hämta alla quiz
$stmt = $pdo->query("
SELECT q.id, q.title, q.description, q.is_active,
COUNT(DISTINCT qs.id) as question_count
FROM quizzes q
LEFT JOIN questions qs ON q.id = qs.quiz_id
GROUP BY q.id
ORDER BY q.created_at DESC
");
$quizzes = $stmt->fetchAll(PDO::FETCH_ASSOC);
$page_title = 'Hantera Quiz';
require_once '../includes/header.php';
?>
<div class="container">
<div class="admin-section">
<h1>Hantera Quiz</h1>
<a href="admin_panel.php" class="btn btn-secondary">Tillbaka till Admin Panel</a>
<?php if (isset($_SESSION['success'])): ?>
<div class="success-message">
<?php
echo htmlspecialchars($_SESSION['success']);
unset($_SESSION['success']);
?>
</div>
<?php endif; ?>
<table>
<thead>
<tr>
<th>Titel</th>
<th>Beskrivning</th>
<th>Antal frågor</th>
<th>Status</th>
<th>Åtgärder</th>
</tr>
</thead>
<tbody>
<?php foreach ($quizzes as $quiz): ?>
<tr>
<td><?php echo htmlspecialchars($quiz['title']); ?></td>
<td><?php echo htmlspecialchars(substr($quiz['description'], 0, 50)); ?>...</td>
<td><?php echo $quiz['question_count']; ?></td>
<td><?php echo $quiz['is_active'] ? 'Aktiv' : 'Inaktiv'; ?></td>
<td>
<form method="POST" style="display:inline;" onsubmit="return confirm('Är du säker på att du vill radera detta quiz?');">
<input type="hidden" name="quiz_id" value="<?php echo $quiz['id']; ?>">
<button type="submit" name="delete_quiz" class="btn btn-danger">Radera</button>
</form>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<a href="../create_quiz.php" class="btn btn-primary">Skapa nytt quiz</a>
</div>
</div>
<?php require_once '../includes/footer.php'; ?>