prepare("SELECT * FROM users WHERE email = :email"); $stmt->execute(['email' => $email]); $user = $stmt->fetch(); if($user && password_verify($password, $user['password'])) { $_SESSION['is_logged_in'] = true; $_SESSION['email'] = $user['email']; $_SESSION['flash'] = 'login_success'; header("Location: dashboard.php"); exit; } else { $swal_script = "Swal.fire({ icon: 'error', title: 'Akses Ditolak', text: 'Email atau password salah!', background: '#1e293b', color: '#fff', confirmButtonColor: '#ef4444' });"; } } // Proses Login via Google (Menerima Token POST dari JavaScript Google) if(isset($_POST['google_token'])) { $id_token = $_POST['google_token']; $url = "https://oauth2.googleapis.com/tokeninfo?id_token=" . $id_token; $response = @file_get_contents($url); $payload = json_decode($response, true); if($payload && isset($payload['email'])) { $google_email = $payload['email']; $google_id = $payload['sub']; $stmt = $pdo->prepare("SELECT * FROM users WHERE email = ?"); $stmt->execute([$google_email]); $existing_user = $stmt->fetch(); if($existing_user) { $update = $pdo->prepare("UPDATE users SET google_id = ? WHERE email = ?"); $update->execute([$google_id, $google_email]); } else { $insert = $pdo->prepare("INSERT INTO users (email, google_id) VALUES (?, ?)"); $insert->execute([$google_email, $google_id]); } $_SESSION['is_logged_in'] = true; $_SESSION['email'] = $google_email; $_SESSION['flash'] = 'login_success'; echo json_encode(['status' => 'success']); exit; } else { echo json_encode(['status' => 'error', 'message' => 'Token Google tidak valid']); exit; } } ?> Login - Sistem Absensi Zoom Operasional Badan Gizi Nasional

Silakan Login

Masuk menggunakan akun yang Anda miliki

6 + 2 × 3
ATAU
🚚
Makan Bergizi Gratis!
Generasi Emas 2045