-
Notifications
You must be signed in to change notification settings - Fork 0
/
nickname.ajax.php
73 lines (67 loc) · 1.92 KB
/
nickname.ajax.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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<?php
session_start();
require 'constants.inc.php';
require 'DbConnPDO.class.php';
require 'User.class.php';
// Definir uma variável com o nickname recebido pelo método POST
$nickname = filter_input(INPUT_POST, 'nickname', FILTER_SANITIZE_STRING);
# 1. Verificar se o nickname contém o número mínimo de carateres
if (strlen($nickname) < 3) {
$message = 'O nickname deve ter no mínimo 3 carateres';
echo json_encode(
array(
'action' => 'insert',
'notification' => 'error',
'message' => $message
)
);
exit;
}
# 2. Verificar se o nickname já existe na base de dados
try {
$user = new User();
$nickname_exists = $user->checkNicknameExists($nickname);
if ($nickname_exists) {
$message = 'Este nickname já existe.';
echo json_encode(
array(
'action' => 'insert',
'notification' => 'error',
'message' => $message
)
);
exit;
}
} catch (Exception $e) {
$message = 'Ocorreu um erro.';
echo json_encode(
array(
"action" => "insert",
"notification" => "error",
"message" => $message
)
);
exit;
}
# 3. Inserir o utilizador na base de dados
try {
$user->insert($nickname);
$_SESSION['nickname'] = $nickname;
echo json_encode(
array(
'action' => 'replace',
'notification' => 'success',
'message' => 'Olá '.$nickname.', aguarde por favor...'
)
);
} catch (Exception $e) {
$message = 'Ocorreu um erro.';
echo json_encode(
array(
"action" => "insert",
"notification" => "error",
"message" => $message
)
);
exit;
}