-
Notifications
You must be signed in to change notification settings - Fork 0
/
register.php
43 lines (37 loc) · 1.34 KB
/
register.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
require 'config.php';
require 'functions.php';
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
header('Content-Type: application/json');
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// Sanitize inputs
$username = trim(htmlspecialchars($_POST['username']));
$email = trim(filter_var($_POST['email'], FILTER_SANITIZE_EMAIL));
$password = $_POST['password'];
// Basic input validation
if (empty($username) || empty($email) || empty($password)) {
echo json_encode(['success' => false, 'message' => 'All fields are required.']);
exit();
}
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo json_encode(['success' => false, 'message' => 'Invalid email format.']);
exit();
}
if (strlen($password) < 6) {
echo json_encode(['success' => false, 'message' => 'Password must be at least 6 characters long.']);
exit();
}
// Register user
$result = registerUser($username, $email, $password);
// Return result
if ($result === "Registration successful!") {
echo json_encode(['success' => true, 'message' => $result]);
} else {
echo json_encode(['success' => false, 'message' => $result]);
}
} else {
header("Location: register.html");
exit();
}