connect_error) { die(json_encode(["success" => false, "message" => "Errore di connessione: " . $conn->connect_error])); } // Ricezione dati dal form $user_id = isset($_POST['user_id']) ? intval($_POST['user_id']) : 0; $first_name = isset($_POST['first_name']) ? $conn->real_escape_string($_POST['first_name']) : null; $last_name = isset($_POST['last_name']) ? $conn->real_escape_string($_POST['last_name']) : null; $company_name = isset($_POST['company_name']) ? $conn->real_escape_string($_POST['company_name']) : null; $tax_code = isset($_POST['tax_code']) ? $conn->real_escape_string($_POST['tax_code']) : null; $email = isset($_POST['email']) ? $conn->real_escape_string($_POST['email']) : null; $phone = isset($_POST['phone']) ? $conn->real_escape_string($_POST['phone']) : null; $address = isset($_POST['address']) ? $conn->real_escape_string($_POST['address']) : null; $postal_code = isset($_POST['postal_code']) ? $conn->real_escape_string($_POST['postal_code']) : null; $city = isset($_POST['city']) ? $conn->real_escape_string($_POST['city']) : null; $province = isset($_POST['province']) ? $conn->real_escape_string($_POST['province']) : null; $country = isset($_POST['country']) ? intval($_POST['country']) : null; $owner_type = isset($_POST['owner_type']) ? $conn->real_escape_string($_POST['owner_type']) : null; $role = isset($_POST['role']) ? $conn->real_escape_string($_POST['role']) : null; $notes = isset($_POST['notes']) ? $conn->real_escape_string($_POST['notes']) : null; // Validazione dei campi obbligatori if (!$user_id || !$tax_code || !$email || !$owner_type) { die(json_encode(["success" => false, "message" => "Campi obbligatori mancanti."])); } // Se è una persona fisica, company_name deve essere NULL if ($owner_type === "individual") { $company_name = null; } // Controlla se il proprietario esiste già (evita duplicati) $queryCheck = $conn->prepare("SELECT owner_id FROM property_owners WHERE tax_code = ?"); $queryCheck->bind_param("s", $tax_code); $queryCheck->execute(); $resultCheck = $queryCheck->get_result(); if ($resultCheck->num_rows > 0) { die(json_encode(["success" => false, "message" => "Esiste già un proprietario con questo Codice Fiscale/Partita IVA."])); } // Inserisci nuovo proprietario $queryInsert = $conn->prepare(" INSERT INTO property_owners (user_id, first_name, last_name, company_name, tax_code, email, phone, address, postal_code, city, province, country, owner_type, role, notes) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) "); if ($queryInsert === false) { die(json_encode(["success" => false, "message" => "Errore nella query: " . $conn->error])); } $queryInsert->bind_param( "issssssssssssss", $user_id, $first_name, $last_name, $company_name, $tax_code, $email, $phone, $address, $postal_code, $city, $province, $country, $owner_type, $role, $notes ); if ($queryInsert->execute()) { echo json_encode(["success" => true, "message" => "Proprietario aggiunto con successo!", "owner_id" => $queryInsert->insert_id, "owner_name" => $first_name . " " . $last_name, "tax_code" => $tax_code]); } else { die(json_encode(["success" => false, "message" => "Errore nell'inserimento: " . $queryInsert->error])); } // Chiude la connessione $conn->close();