diff --git a/php/auth/register.php b/php/auth/register.php new file mode 100644 index 0000000..41c38ae --- /dev/null +++ b/php/auth/register.php @@ -0,0 +1,109 @@ + 0) { + $errors[] = 'Username già esistente'; + } + + if (!empty($errors)) { + echo json_encode(['status' => 'error', 'errors' => $errors]); + exit; + } + + // Inserimenti semplici (senza transazioni per semplicità) + $oggi = date('Y-m-d'); + $sql_person = "INSERT INTO `person` (nome, cognome, data_nascita, luogo_nascita, cod_fiscale, telefono) VALUES ('$nome_e', '$cognome_e', '$data_nascita_e', '$luogo_nascita_e', '$cod_fiscale_e', '$telefono_e')"; + if (!mysqli_query($conn, $sql_person)) { + echo json_encode(['status' => 'error', 'errors' => ['Errore inserimento persona']]); + exit; + } + $person_id = mysqli_insert_id($conn); + + $sql_user = "INSERT INTO `user` (descrizione, data, person_id, password) VALUES ('$username_e', '$oggi', $person_id, '$password_e')"; + if (!mysqli_query($conn, $sql_user)) { + echo json_encode(['status' => 'error', 'errors' => ['Errore inserimento utente']]); + exit; + } + $user_id = mysqli_insert_id($conn); + + $sql_perm = "INSERT INTO `permission` (user_id, role, data) VALUES ($user_id, 3, '$oggi')"; + if (!mysqli_query($conn, $sql_perm)) { + echo json_encode(['status' => 'error', 'errors' => ['Errore assegnazione ruolo']]); + exit; + } + + // Login automatico e risposta + $_SESSION['user_id'] = (int)$user_id; + $_SESSION['username'] = $username; + $_SESSION['role_id'] = 3; + $_SESSION['role_name'] = 'utente'; + + echo json_encode(['status' => 'ok']); + exit; +} else { + header('Content-Type: application/json'); + http_response_code(405); + echo json_encode(['status' => 'error', 'errors' => ['Metodo non consentito']]); + exit; +} \ No newline at end of file