alert('Semua data wajib diisi!'); window.location='index.php';";
exit;
}
// Cek Format Email (Biar gak ngawur)
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo "";
exit;
}
// Cek Panjang Password (Minimal 6)
if (strlen($password) < 6) {
echo "";
exit;
}
// Cek Kesamaan Password
if ($password !== $confirm) {
echo "";
exit;
}
// --- 2. CEK DUPLIKAT DI DATABASE ---
$stmt = mysqli_prepare($conn, "SELECT id FROM users WHERE username = ? OR email = ?");
mysqli_stmt_bind_param($stmt, "ss", $username, $email);
mysqli_stmt_execute($stmt);
mysqli_stmt_store_result($stmt);
if (mysqli_stmt_num_rows($stmt) > 0) {
echo "";
exit;
}
mysqli_stmt_close($stmt);
// --- 3. SIMPAN DATA ---
$hashed_password = password_hash($password, PASSWORD_DEFAULT);
$stmtInsert = mysqli_prepare($conn, "INSERT INTO users (username, email, password) VALUES (?, ?, ?)");
mysqli_stmt_bind_param($stmtInsert, "sss", $username, $email, $hashed_password);
if (mysqli_stmt_execute($stmtInsert)) {
echo "";
} else {
echo "Error: " . mysqli_error($conn);
}
mysqli_stmt_close($stmtInsert);
}
// ==========================================
// BAGIAN 2: LOGIKA LOGIN
// ==========================================
else if (isset($_POST['btn-login'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$stmt = mysqli_prepare($conn, "SELECT * FROM users WHERE username=?");
mysqli_stmt_bind_param($stmt, "s", $username);
mysqli_stmt_execute($stmt);
$result = mysqli_stmt_get_result($stmt);
$row = mysqli_fetch_assoc($result);
// JIKA GAGAL
if (!$row || !password_verify($password, $row['password'])) {
// Kirim sinyal error ke HTML (Kotak Merah)
header("Location: index.php?error=gagal");
exit;
}
// JIKA SUKSES
$_SESSION['username'] = $row['username'];
$_SESSION['login'] = true;
header("Location: mainboard.html");
exit;
}
?>