| Server IP : 104.21.80.248 / Your IP : 162.159.115.41 Web Server : Apache/2.4.25 (Win32) OpenSSL/1.0.2j PHP/5.6.30 System : Windows NT WIN-ECQAAA40806 6.2 build 9200 (Windows Server 2012 Standard Edition) i586 User : SYSTEM ( 0) PHP Version : 5.6.30 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : E:/Inetpub/www/training/user/ |
Upload File : |
<?php
include("../session.php");
if ($role != 'user') {
header("Location: ../index.php");
exit;
}
include("../db.php");
// ดึงข้อมูลผู้ใช้
$user_id = $_SESSION['user_id'];
$user_name = $u_name; // จาก session.php
// ตรวจอสอบประเภทเกียรติบัตร
$certificate_type = isset($_GET['type']) ? $_GET['type'] : '1';
$certificate_title = '';
$certificate_message = '';
$has_access = false;
// ตรวจสอบเงื่อนไขเกียรติบัตรตามประเภท
if ($certificate_type === '1') {
// เกียรติบัตรพิเศษ 1: ผ่านทุกหลักสูตรปี 2568
$certificate_title = 'เกียรติบัตรทอง: ผ่านทุกหลักสูตรปี 2568';
$result = mysqli_query($conn, "
SELECT COUNT(s.id) as total_2568,
SUM(CASE WHEN er.passed = 1 THEN 1 ELSE 0 END) as passed_2568
FROM subjects s
LEFT JOIN exam_results er ON s.id = er.subject_id AND er.user_id = $user_id
WHERE s.curriculum_year = '2568'
");
$row = mysqli_fetch_assoc($result);
// $total_2568 = $row['total_2568'];
$total_2568 = 14;
$passed_2568 = $row['passed_2568'];
$has_access = ($passed_2568 >= $total_2568 && $total_2568 > 0);
$certificate_message = $has_access ?
"ยินดีด้วย! คุณผ่านทุกหลักสูตรในปี 2568 ($passed_2568/$total_2568 วิชา)" :
"คุณยังไม่ผ่านทุกหลักสูตรในปี 2568 (ผ่าน $passed_2568/$total_2568 วิชา)";
} elseif ($certificate_type === '2') {
// เกiaรติบัตรพิเศษ 2: ผ่านทุกหลักสูตรปี 2568 และอย่างน้อย 10 หลักสูตรในปี 2565-2567
$certificate_title = 'เกียรติบัตรเพชร: ผ่านทุกหลักสูตรปี 2568 และผ่านอย่างน้อย 10 หลักสูตรในปี 2565-2567';
// ตรวจสอบหลักสูตรปี 2568
$result_2568 = mysqli_query($conn, "
SELECT COUNT(s.id) as total_2568,
SUM(CASE WHEN er.passed = 1 THEN 1 ELSE 0 END) as passed_2568
FROM subjects s
LEFT JOIN exam_results er ON s.id = er.subject_id AND er.user_id = $user_id
WHERE s.curriculum_year = '2568'
");
$row_2568 = mysqli_fetch_assoc($result_2568);
// $total_2568 = $row_2568['total_2568'];
$total_2568 = 14;
$passed_2568 = $row_2568['passed_2568'];
$passed_2568_all = ($passed_2568 >= $total_2568 && $total_2568 > 0);
// ตรวจสอบหลักสูตรปี 2565-2567
$result_2565_2567 = mysqli_query($conn, "
SELECT COUNT(*) as passed_2565_2567
FROM exam_results er
JOIN subjects s ON er.subject_id = s.id
WHERE er.user_id = $user_id AND er.passed = 1 AND s.curriculum_year = '2565-2567'
");
$row_2565_2567 = mysqli_fetch_assoc($result_2565_2567);
$passed_2565_2567 = $row_2565_2567['passed_2565_2567'];
$has_access = ($passed_2568_all && $passed_2565_2567 >= 10);
$certificate_message = $has_access ?
"ยินดีด้วย! คุณผ่านทุกหลักสูตรในปี 2568 ($passed_2568/$total_2568 วิชา) และผ่าน $passed_2565_2567 หลักสูตรในปี 2565-2567" :
($passed_2568_all ?
"คุณผ่านทุกหลักสูตรในปี 2568 แต่ผ่านเพียง $passed_2565_2567 หลักสูตรในปี 2565-2567 (ต้องผ่านอย่างน้อย 10 วิชา)" :
"คุณยังไม่ผ่านทุกหลักสูตรในปี 2568 (ผ่าน $passed_2568/$total_2568 วิชา)");
} else {
// หาก type ไม่ถูกต้อง ให้ redirect ไปที่ type=1
header("Location: special_certificate.php?type=1");
exit;
}
// ถ้ามีการกดปุ่มดาวน์โหลด
if (isset($_POST['download_certificate']) && $has_access) {
// เข้ารหัส id ด้วย base64
$encoded_id = base64_encode($user_id);
// เก็บชื่อและประเภทเกียรติบัตรใน session
$_SESSION['nm'] = $user_name;
$_SESSION['certificate_type'] = $certificate_type;
// ส่งไปยังไฟล์ที่เหมาะสมตาม type
$certificate_file = $certificate_type === '1' ? 'certi1.php' : 'certi2.php';
header("Location: $certificate_file?id=$encoded_id&type=$certificate_type");
exit;
}
// ตรวจสอบสิทธิ์สำหรับเกียรติบัตรทองและเพชร
$has_gold_access = false;
$has_diamond_access = false;
// ตรวจสอบเกียรติบัตรทอง
$result_gold = mysqli_query($conn, "
SELECT COUNT(s.id) as total_2568,
SUM(CASE WHEN er.passed = 1 THEN 1 ELSE 0 END) as passed_2568
FROM subjects s
LEFT JOIN exam_results er ON s.id = er.subject_id AND er.user_id = $user_id
WHERE s.curriculum_year = '2568'
");
$row_gold = mysqli_fetch_assoc($result_gold);
$total_2568 = $row_gold['total_2568'];
$passed_2568 = $row_gold['passed_2568'];
$has_gold_access = ($passed_2568 >= $total_2568 && $total_2568 > 0);
// ตรวจสอบเกียรติบัตรเพชร
$result_diamond_2568 = mysqli_query($conn, "
SELECT COUNT(s.id) as total_2568,
SUM(CASE WHEN er.passed = 1 THEN 1 ELSE 0 END) as passed_2568
FROM subjects s
LEFT JOIN exam_results er ON s.id = er.subject_id AND er.user_id = $user_id
WHERE s.curriculum_year = '2568'
");
$row_diamond_2568 = mysqli_fetch_assoc($result_diamond_2568);
$total_2568 = $row_diamond_2568['total_2568'];
$passed_2568 = $row_diamond_2568['passed_2568'];
$passed_2568_all = ($passed_2568 >= $total_2568 && $total_2568 > 0);
$result_diamond_2565_2567 = mysqli_query($conn, "
SELECT COUNT(*) as passed_2565_2567
FROM exam_results er
JOIN subjects s ON er.subject_id = s.id
WHERE er.user_id = $user_id AND er.passed = 1 AND s.curriculum_year = '2565-2567'
");
$row_diamond_2565_2567 = mysqli_fetch_assoc($result_diamond_2565_2567);
$passed_2565_2567 = $row_diamond_2565_2567['passed_2565_2567'];
$has_diamond_access = ($passed_2568_all && $passed_2565_2567 >= 10);
?>
<!DOCTYPE html>
<html lang="th">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><?php echo htmlspecialchars($certificate_title); ?> - ผู้ใช้</title>
<!-- Bootstrap 5 CSS -->
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<!-- Font Awesome Icons -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
<style>
:root {
--primary-color: #4e73df;
--secondary-color: #858796;
--success-color: #1cc88a;
--danger-color: #e74a3b;
--warning-color: #f6c23e;
--light-bg: #f8f9fc;
}
body {
background-color: var(--light-bg);
font-family: 'Prompt', sans-serif;
padding-top: 56px;
}
.main-navbar {
background: linear-gradient(90deg, var(--primary-color) 0%, #224abe 100%);
padding: 0.5rem 1rem;
}
.main-navbar .navbar-brand {
color: white;
font-weight: 600;
}
.main-navbar .nav-link {
color: rgba(255, 255, 255, 0.8);
padding: 0.75rem 1rem;
border-radius: 0.375rem;
transition: all 0.3s;
margin: 0 0.25rem;
}
.main-navbar .nav-link:hover,
.main-navbar .nav-link.active {
color: white;
background-color: rgba(255, 255, 255, 0.1);
}
.main-navbar .nav-link i {
margin-right: 0.5rem;
}
.user-dropdown .dropdown-toggle::after {
display: none;
}
.user-dropdown .dropdown-toggle {
display: flex;
align-items: center;
color: rgba(255, 255, 255, 0.8);
text-decoration: none;
}
.user-dropdown .dropdown-toggle:hover {
color: white;
}
.user-dropdown .dropdown-menu {
margin-top: 0.5rem;
border: none;
box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}
.card {
border: none;
border-radius: 0.5rem;
box-shadow: 0 0.15rem 1.75rem 0 rgba(58, 59, 69, 0.1);
margin-bottom: 1.5rem;
}
.card-header {
background-color: #f8f9fc;
border-bottom: 1px solid #e3e6f0;
padding: 1rem 1.25rem;
}
.special-certificate {
background: linear-gradient(to right, #4e73df, #224abe);
color: white;
padding: 2rem;
border-radius: 0.5rem;
margin-bottom: 2rem;
text-align: center;
}
.certificate-icon {
font-size: 4rem;
color: gold;
margin-bottom: 1rem;
}
@media (max-width: 992px) {
.navbar-collapse {
background-color: var(--primary-color);
padding: 1rem;
border-radius: 0.5rem;
margin-top: 0.5rem;
}
}
</style>
<!-- Font from Google Fonts -->
<link href="https://fonts.googleapis.com/css2?family=Prompt:wght@300;400;500;600;700&display=swap" rel="stylesheet">
</head>
<body>
<!-- Main Navbar -->
<nav class="navbar navbar-expand-lg fixed-top main-navbar">
<div class="container-fluid">
<a class="navbar-brand" href="#">
<i class="fas fa-laptop-code me-2"></i>
ระบบข้อสอบออนไลน์
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav"
aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav me-auto">
<li class="nav-item">
<a class="nav-link" href="dashboard.php">
<i class="fas fa-tachometer-alt"></i>
ภาพรวม
</a>
</li>
<?php if ($has_gold_access): ?>
<li class="nav-item">
<a class="nav-link <?php echo $certificate_type === '1' ? 'active' : ''; ?>" href="special_certificate.php?type=1">
<i class="fas fa-award"></i>
ดาวน์โหลดเกียรติบัตรทอง
</a>
</li>
<?php endif; ?>
<?php if ($has_diamond_access): ?>
<li class="nav-item">
<a class="nav-link <?php echo $certificate_type === '2' ? 'active' : ''; ?>" href="special_certificate.php?type=2">
<i class="fas fa-award"></i>
ดาวน์โหลดเกียรติบัตรเพชร
</a>
</li>
<?php endif; ?>
</ul>
<div class="user-dropdown dropdown">
<a href="#" class="dropdown-toggle" id="userDropdown" data-bs-toggle="dropdown" aria-expanded="false">
<div>
<div class="fw-bold text-white"><?php echo htmlspecialchars($u_name); ?></div>
<div class="small" style="color: rgba(255, 255, 255, 0.7);">ผู้ใช้ทั่วไป</div>
</div>
<i class="fas fa-chevron-down ms-2"></i>
</a>
<ul class="dropdown-menu dropdown-menu-end shadow">
<li><a class="dropdown-item" href="../logout.php"><i class="fas fa-sign-out-alt me-2"></i> ออกจากระบบ</a></li>
</ul>
</div>
</div>
</div>
</nav>
<!-- Main Content -->
<div class="container-fluid px-4 mt-4">
<div class="d-flex justify-content-between align-items-center mb-4">
</div>
<?php if ($has_access): ?>
<div class="special-certificate">
<div class="certificate-icon">
<i class="fas fa-certificate"></i>
</div>
<h3 class="mb-3"><?php echo htmlspecialchars($certificate_message); ?></h3>
<p class="mb-4">คุณมีสิทธิ์รับ<?php echo htmlspecialchars($certificate_title); ?></p>
<form method="post" action="<?php echo $certificate_type === '1' ? 'certi1.php' : 'certi2.php'; ?>?id=<?php echo base64_encode($user_id); ?>&type=<?php echo $certificate_type; ?>" target="_blank">
<input type="hidden" name="nm" value="<?php echo htmlspecialchars($user_name); ?>">
<input type="hidden" name="certificate_type" value="<?php echo $certificate_type; ?>">
<button type="submit" name="download_certificate" class="btn btn-light btn-lg">
<i class="fas fa-download me-2"></i>
ดาวน์โหลด<?php echo htmlspecialchars($certificate_title); ?>
</button>
</form>
</div>
<?php else: ?>
<div class="card">
<div class="card-body text-center py-5">
<i class="fas fa-lock fa-4x text-secondary mb-3"></i>
<h3 class="mb-3">คุณยังไม่มีสิทธิ์รับ<?php echo htmlspecialchars($certificate_title); ?></h3>
<p class="mb-4"><?php echo htmlspecialchars($certificate_message); ?></p>
<a href="dashboard.php" class="btn btn-primary">
<i class="fas fa-arrow-left me-2"></i>
กลับไปหน้าภาพรวม
</a>
</div>
</div>
<?php endif; ?>
</div>
<!-- Bootstrap Bundle with Popper -->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>