prepare("SELECT id, invite_code_expires_at FROM servers WHERE invite_code = ?"); $stmt->execute([$invite_code]); $server = $stmt->fetch(); if (!$server) { $error = "Invalid invitation code."; } elseif ($server['invite_code_expires_at'] && strtotime($server['invite_code_expires_at']) < time()) { $error = "This invitation code has expired."; } else { $server_id = $server['id']; } } } if (!$error) { $hash = password_hash($password, PASSWORD_DEFAULT); try { $stmt = db()->prepare("INSERT INTO users (username, display_name, email, password_hash) VALUES (?, ?, ?, ?)"); $stmt->execute([$username, $username, $email, $hash]); $userId = db()->lastInsertId(); // Add to the appropriate server $stmt = db()->prepare("INSERT IGNORE INTO server_members (server_id, user_id) VALUES (?, ?)"); $stmt->execute([$server_id, $userId]); $_SESSION['user_id'] = $userId; header('Location: ../index.php?server_id=' . $server_id); exit; } catch (Exception $e) { $error = "Registration failed: " . $e->getMessage(); } } } else { $error = "Please fill all fields."; } } ?> Register | Discord Clone

Create an account