36557-vm/auth.php
Flatlogic Bot 0727615032 0.1
2025-12-01 19:31:46 +00:00

59 lines
1.6 KiB
PHP

<?php
session_start();
require_once 'db/config.php';
function register($name, $email, $password, $sponsor_code) {
$db = db();
$sponsor_id = null;
if ($sponsor_code) {
$stmt = $db->prepare("SELECT id FROM users WHERE referral_code = ?");
$stmt->execute([$sponsor_code]);
$sponsor = $stmt->fetch();
if (!$sponsor) {
return 'Invalid sponsor code.';
}
$sponsor_id = $sponsor['id'];
}
$password_hash = password_hash($password, PASSWORD_BCRYPT);
$referral_code = uniqid();
try {
$stmt = $db->prepare("INSERT INTO users (name, email, password, referral_code, sponsor_id) VALUES (?, ?, ?, ?, ?)");
$stmt->execute([$name, $email, $password_hash, $referral_code, $sponsor_id]);
return true;
} catch (PDOException $e) {
if ($e->errorInfo[1] == 1062) {
return 'Email already exists.';
}
return $e->getMessage();
}
}
function login($email, $password) {
$db = db();
$stmt = $db->prepare("SELECT * FROM users WHERE email = ?");
$stmt->execute([$email]);
$user = $stmt->fetch();
if ($user && password_verify($password, $user['password'])) {
$_SESSION['user_id'] = $user['id'];
return true;
}
return false;
}
function get_user_by_id($id) {
$db = db();
$stmt = $db->prepare("SELECT * FROM users WHERE id = ?");
$stmt->execute([$id]);
return $stmt->fetch();
}
function get_downline($user_id) {
$db = db();
$stmt = $db->prepare("SELECT * FROM users WHERE sponsor_id = ?");
$stmt->execute([$user_id]);
return $stmt->fetchAll();
}