connect_error) { die(json_encode(["success" => false, "message" => "Errore di connessione: " . $conn->connect_error])); } // Recupera i dati inviati tramite POST $idhome = isset($_POST['idhome']) ? intval($_POST['idhome']) : 0; $owner_id = isset($_POST['owner_id']) ? intval($_POST['owner_id']) : 0; $ownership_percentage = isset($_POST['ownership_percentage']) ? floatval($_POST['ownership_percentage']) : null; $notes = isset($_POST['notes']) ? $conn->real_escape_string($_POST['notes']) : null; // Verifica che tutti i dati siano presenti if ($idhome <= 0 || $owner_id <= 0 || is_null($ownership_percentage)) { die(json_encode(["success" => false, "message" => "Errore: Dati mancanti."])); } // Controlla se il proprietario è già associato alla casa $queryCheck = $conn->prepare("SELECT 1 FROM home_owners WHERE home_id = ? AND owner_id = ?"); $queryCheck->bind_param('ii', $idhome, $owner_id); $queryCheck->execute(); $resultCheck = $queryCheck->get_result(); if ($resultCheck->num_rows > 0) { die(json_encode(["success" => false, "message" => "Errore: Il proprietario è già associato a questa casa."])); } // Calcola la somma attuale delle percentuali di proprietà $queryTotal = $conn->prepare("SELECT SUM(ownership_percentage) FROM home_owners WHERE home_id = ?"); $queryTotal->bind_param('i', $idhome); $queryTotal->execute(); $queryTotal->bind_result($currentTotal); $queryTotal->fetch(); $queryTotal->close(); $totalAfterInsert = $currentTotal + $ownership_percentage; if ($totalAfterInsert > 100) { die(json_encode(["success" => false, "message" => "Errore: La somma totale dei proprietari supererebbe il 100%."])); } // Inserisce il nuovo proprietario nella tabella home_owners $queryInsert = $conn->prepare(" INSERT INTO home_owners (home_id, owner_id, ownership_percentage, notes, created_at, updated_at) VALUES (?, ?, ?, ?, NOW(), NOW()) "); if ($queryInsert === false) { die(json_encode(["success" => false, "message" => "Errore nella preparazione della query: " . $conn->error])); } $queryInsert->bind_param('iids', $idhome, $owner_id, $ownership_percentage, $notes); if ($queryInsert->execute()) { echo json_encode(["success" => true, "message" => "Proprietario aggiunto con successo."]); } else { die(json_encode(["success" => false, "message" => "Errore nell'inserimento: " . $queryInsert->error])); } $queryInsert->close(); $conn->close();