File "debug-quiz.php"
Full path: /home/algopkco/public_html/public/debug-quiz.php
File
size: 4.48 B (4.48 KB bytes)
MIME-type: text/x-php
Charset: utf-8
Download Open Edit Advanced Editor &nnbsp; Back
<?php
// Debug script to check quiz questions
require __DIR__ . '/../vendor/autoload.php';
$app = require_once __DIR__ . '/../bootstrap/app.php';
$kernel = $app->make(Illuminate\Contracts\Console\Kernel::class);
$kernel->bootstrap();
echo "<h1>Quiz Debug Information</h1>";
echo "<style>body { font-family: Arial; padding: 20px; } table { border-collapse: collapse; width: 100%; } th, td { border: 1px solid #ddd; padding: 8px; text-align: left; } th { background-color: #4CAF50; color: white; } .error { color: red; font-weight: bold; } .success { color: green; font-weight: bold; }</style>";
try {
// Find the quiz
$quiz = App\Models\Quiz::where('slug', 'mcqaa')->first();
if (!$quiz) {
echo "<p class='error'>❌ Quiz with slug 'mcqaa' not found!</p>";
// Show available quizzes
$quizzes = App\Models\Quiz::select('id', 'slug', 'title')->limit(10)->get();
echo "<h2>Available Quizzes:</h2>";
echo "<table><tr><th>ID</th><th>Slug</th><th>Title</th></tr>";
foreach ($quizzes as $q) {
echo "<tr><td>{$q->id}</td><td>{$q->slug}</td><td>{$q->title}</td></tr>";
}
echo "</table>";
exit;
}
echo "<p class='success'>✅ Quiz Found!</p>";
echo "<table>";
echo "<tr><th>Property</th><th>Value</th></tr>";
echo "<tr><td>ID</td><td>{$quiz->id}</td></tr>";
echo "<tr><td>Title</td><td>{$quiz->title}</td></tr>";
echo "<tr><td>Slug</td><td>{$quiz->slug}</td></tr>";
echo "<tr><td>Exam Type</td><td>{$quiz->exam_type}</td></tr>";
echo "<tr><td>Enable Random Questions</td><td>" . ($quiz->enable_random_questions ? 'Yes' : 'No') . "</td></tr>";
echo "<tr><td>Questions to Display</td><td>{$quiz->questions_to_display}</td></tr>";
echo "</table>";
// Check questions in database
$questionsInDB = DB::table('questionbank_quizzes')
->where('quize_id', $quiz->id)
->get();
echo "<h2>Questions in Database</h2>";
echo "<p><strong>Total Questions: " . count($questionsInDB) . "</strong></p>";
if (count($questionsInDB) > 0) {
echo "<table>";
echo "<tr><th>#</th><th>Question ID</th><th>Subject ID</th><th>Marks</th></tr>";
$i = 1;
foreach ($questionsInDB as $q) {
echo "<tr><td>{$i}</td><td>{$q->questionbank_id}</td><td>{$q->subject_id}</td><td>{$q->marks}</td></tr>";
$i++;
}
echo "</table>";
// Test getQuestions method
echo "<h2>Testing getQuestions() Method</h2>";
$questions = $quiz->getQuestions();
echo "<p><strong>Returned Questions: " . count($questions) . "</strong></p>";
// Test prepareQuestions method
echo "<h2>Testing prepareQuestions() Method</h2>";
$user = Auth::user();
$user_id = $user ? $user->id : null;
echo "<p>User ID: " . ($user_id ?? 'NULL (Guest)') . "</p>";
try {
$prepared = $quiz->prepareQuestions($questions, '', $user_id);
echo "<p class='success'>✅ prepareQuestions() executed successfully</p>";
echo "<p><strong>Prepared Questions Count: " . count($prepared['questions']) . "</strong></p>";
echo "<p><strong>Prepared Subjects Count: " . count($prepared['subjects']) . "</strong></p>";
if (count($prepared['questions']) > 0) {
echo "<h3>First Question Details:</h3>";
$first = $prepared['questions'][0];
echo "<pre>";
echo "ID: " . $first->id . "\n";
echo "Question: " . substr(strip_tags($first->question), 0, 100) . "...\n";
echo "Type: " . $first->question_type . "\n";
echo "Marks: " . $first->marks . "\n";
echo "</pre>";
}
} catch (Exception $e) {
echo "<p class='error'>❌ Error in prepareQuestions(): " . $e->getMessage() . "</p>";
echo "<pre>" . $e->getTraceAsString() . "</pre>";
}
} else {
echo "<p class='error'>❌ No questions found for this quiz!</p>";
echo "<p>Please add questions to this quiz from the admin panel.</p>";
}
} catch (Exception $e) {
echo "<p class='error'>❌ Error: " . $e->getMessage() . "</p>";
echo "<pre>" . $e->getTraceAsString() . "</pre>";
}
echo "<hr><p><a href='/testapp/exams/student/start-exam/mcqaa'>← Back to Quiz</a></p>";