129 lines
5.2 KiB
PHP
129 lines
5.2 KiB
PHP
<?php
|
|
ini_set('display_errors', 1);
|
|
ini_set('display_startup_errors', 1);
|
|
error_reporting(E_ALL);
|
|
|
|
include('include/headscript.php');
|
|
|
|
// Connessione al database
|
|
$conn = new mysqli($servername, $username, $password, $database);
|
|
|
|
// Verifica della connessione
|
|
if ($conn->connect_error) {
|
|
die("Connessione fallita: " . $conn->connect_error);
|
|
}
|
|
|
|
// Recupera l'id utente loggato dalla sessione
|
|
$iduserlogin = intval($_SESSION['iduserlogin']);
|
|
|
|
// Recupera i dati inviati tramite POST
|
|
$owner_id = isset($_POST['owner_id']) ? intval($_POST['owner_id']) : 0;
|
|
$owner_type = isset($_POST['owner_type']) ? $conn->real_escape_string($_POST['owner_type']) : '';
|
|
$first_name = !empty($_POST['first_name']) ? $conn->real_escape_string($_POST['first_name']) : null;
|
|
$last_name = !empty($_POST['last_name']) ? $conn->real_escape_string($_POST['last_name']) : null;
|
|
$company_name = !empty($_POST['company_name']) ? $conn->real_escape_string($_POST['company_name']) : null;
|
|
$tax_code = isset($_POST['tax_code']) ? $conn->real_escape_string($_POST['tax_code']) : '';
|
|
$email = isset($_POST['email']) ? $conn->real_escape_string($_POST['email']) : '';
|
|
$phone = !empty($_POST['phone']) ? $conn->real_escape_string($_POST['phone']) : null;
|
|
$address = !empty($_POST['address']) ? $conn->real_escape_string($_POST['address']) : null;
|
|
$postal_code = !empty($_POST['postal_code']) ? $conn->real_escape_string($_POST['postal_code']) : null;
|
|
$city = !empty($_POST['city']) ? $conn->real_escape_string($_POST['city']) : null;
|
|
$province = !empty($_POST['province']) ? $conn->real_escape_string($_POST['province']) : null;
|
|
$country = isset($_POST['country']) ? intval($_POST['country']) : null; // Converti country in intero
|
|
$role = !empty($_POST['role']) ? $conn->real_escape_string($_POST['role']) : null;
|
|
$owner_type = isset($_POST['owner_type']) ? $conn->real_escape_string($_POST['owner_type']) : 'individual'; // Default to 'individual'
|
|
|
|
|
|
|
|
// Verifica se stiamo aggiungendo un nuovo proprietario o aggiornando uno esistente
|
|
if ($owner_id > 0) {
|
|
// Aggiorna il proprietario esistente
|
|
$query = "UPDATE property_owners
|
|
SET owner_type = ?, first_name = ?, last_name = ?, company_name = ?, tax_code = ?, email = ?, phone = ?, address = ?, postal_code = ?, city = ?, province = ?, country = ?, role = ?
|
|
WHERE owner_id = ? AND user_id = ?";
|
|
$stmt = $conn->prepare($query);
|
|
if ($stmt === false) {
|
|
die("Errore nella preparazione della query: " . $conn->error);
|
|
}
|
|
|
|
// Imposta i valori nulli per i campi facoltativi
|
|
$company_name = !empty($company_name) ? $company_name : null;
|
|
$role = !empty($role) ? $role : null;
|
|
|
|
// Binding dei parametri
|
|
$stmt->bind_param(
|
|
'ssssssssssssiis', // Formato corretto
|
|
$owner_type, // s (string)
|
|
$first_name, // s (string)
|
|
$last_name, // s (string)
|
|
$company_name, // s (string, può essere null)
|
|
$tax_code, // s (string)
|
|
$email, // s (string)
|
|
$phone, // s (string)
|
|
$address, // s (string)
|
|
$postal_code, // s (string)
|
|
$city, // s (string)
|
|
$province, // s (string)
|
|
$country, // i (intero)
|
|
$role, // s (string, può essere null)
|
|
$owner_id, // i (intero)
|
|
$iduserlogin // i (intero)
|
|
);
|
|
|
|
// Esegui la query
|
|
if ($stmt->execute()) {
|
|
// Reindirizza a manage-owner.php dopo il successo
|
|
header("Location: person-list.php");
|
|
exit();
|
|
} else {
|
|
die("Errore nell'aggiornamento: " . $stmt->error);
|
|
}
|
|
// Inserisci un nuovo proprietario
|
|
$query = "INSERT INTO property_owners
|
|
(user_id, owner_type, first_name, last_name, company_name, tax_code, email, phone, address, postal_code, city, province, country, role)
|
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
|
|
$stmt = $conn->prepare($query);
|
|
if ($stmt === false) {
|
|
die("Errore nella preparazione della query: " . $conn->error);
|
|
}
|
|
|
|
$company_name = !empty($company_name) ? $company_name : null;
|
|
$role = !empty($role) ? $role : null;
|
|
|
|
|
|
|
|
// Binding dei parametri
|
|
$stmt->bind_param(
|
|
'isssssssssssis', // Formato: 2 interi, 12 stringhe
|
|
$iduserlogin, // i (user_id)
|
|
$owner_type, // s (owner_type)
|
|
$first_name, // s (first_name)
|
|
$last_name, // s (last_name)
|
|
$company_name, // s (company_name)
|
|
$tax_code, // s (tax_code)
|
|
$email, // s (email)
|
|
$phone, // s (phone)
|
|
$address, // s (address)
|
|
$postal_code, // s (postal_code)
|
|
$city, // s (city)
|
|
$province, // s (province)
|
|
$country, // i (country)
|
|
$role // s (role)
|
|
);
|
|
|
|
// Esegui la query
|
|
if ($stmt->execute()) {
|
|
echo "Proprietario salvato con successo.";
|
|
// Reindirizza a manage-owner.php dopo il successo
|
|
header("Location: person-list.php");
|
|
exit(); // Assicurati di terminare l'esecuzione dopo il reindirizzamento
|
|
} else {
|
|
die("Errore nell'inserimento o aggiornamento: " . $stmt->error);
|
|
}
|
|
}
|
|
|
|
|
|
// Chiudi la connessione
|
|
$stmt->close();
|
|
$conn->close();
|