update layout
This commit is contained in:
@@ -1,32 +1,84 @@
|
||||
<?php
|
||||
// Debug: attivare la visualizzazione degli errori
|
||||
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(json_encode(['success' => false, 'message' => "Connessione fallita: " . $conn->connect_error]));
|
||||
}
|
||||
|
||||
// Recupera i dati inviati tramite AJAX
|
||||
// Verifica se è un upload di immagine
|
||||
if (!empty($_FILES['photo']) && isset($_POST['idhome'])) {
|
||||
$idhome = intval($_POST['idhome']);
|
||||
|
||||
$uploadDir = 'mainphoto/';
|
||||
if (!file_exists($uploadDir)) {
|
||||
mkdir($uploadDir, 0777, true);
|
||||
}
|
||||
|
||||
$file = $_FILES['photo'];
|
||||
$originalName = pathinfo($file['name'], PATHINFO_FILENAME);
|
||||
$extension = strtolower(pathinfo($file['name'], PATHINFO_EXTENSION));
|
||||
$allowedExtensions = ['jpg', 'jpeg', 'png', 'gif'];
|
||||
|
||||
if (!in_array($extension, $allowedExtensions)) {
|
||||
die(json_encode(['success' => false, 'message' => "Formato non valido. Usa JPG, PNG o GIF."]));
|
||||
}
|
||||
|
||||
$newFilename = $iduserlogin . "-" . preg_replace("/[^a-zA-Z0-9]/", "", $originalName) . "-" . time() . "." . $extension;
|
||||
$filePath = $uploadDir . $newFilename;
|
||||
|
||||
if (move_uploaded_file($file['tmp_name'], $filePath)) {
|
||||
$stmt = $conn->prepare("UPDATE home SET mainphoto = ? WHERE idhome = ?");
|
||||
$stmt->bind_param("si", $newFilename, $idhome);
|
||||
$stmt->execute();
|
||||
$stmt->close();
|
||||
|
||||
echo json_encode(['success' => true, 'filename' => $newFilename]);
|
||||
} else {
|
||||
echo json_encode(['success' => false, 'message' => "Errore nel salvataggio del file."]);
|
||||
}
|
||||
exit();
|
||||
}
|
||||
|
||||
// Aggiornamento AJAX degli altri campi
|
||||
$idhome = isset($_POST['idhome']) ? intval($_POST['idhome']) : 0;
|
||||
$field = isset($_POST['field']) ? $conn->real_escape_string($_POST['field']) : '';
|
||||
$value = isset($_POST['value']) ? $conn->real_escape_string($_POST['value']) : '';
|
||||
|
||||
// Verifica che i campi siano validi
|
||||
if (empty($field) || empty($value)) {
|
||||
die(json_encode(['success' => false, 'message' => 'Dati non validi']));
|
||||
// Lista dei campi consentiti per la sicurezza
|
||||
$allowedFields = [
|
||||
'name',
|
||||
'comment',
|
||||
'fulladdress',
|
||||
'address',
|
||||
'zip',
|
||||
'city',
|
||||
'country',
|
||||
'latitude',
|
||||
'longitude',
|
||||
'cadastral_municipality',
|
||||
'cadastral_section',
|
||||
'cadastral_sheet',
|
||||
'cadastral_particle',
|
||||
'cadastral_sub',
|
||||
'cadastral_category',
|
||||
'cadastral_class',
|
||||
'cadastral_surface',
|
||||
'cadastral_rendita',
|
||||
'cadastral_notes'
|
||||
];
|
||||
|
||||
// Se il campo non è nella lista, termina lo script per evitare SQL Injection
|
||||
if (!in_array($field, $allowedFields)) {
|
||||
die(json_encode(['success' => false, 'message' => "Campo non valido."]));
|
||||
}
|
||||
|
||||
// Gestione per fulladdress e altri campi
|
||||
// Se è l'aggiornamento dell'indirizzo completo, aggiorniamo tutti i relativi campi
|
||||
if ($field == 'fulladdress') {
|
||||
// Separazione dell'indirizzo completo nei suoi componenti (indirizzo, città, CAP, nazione)
|
||||
$address = isset($_POST['address']) ? $conn->real_escape_string($_POST['address']) : '';
|
||||
$city = isset($_POST['city']) ? $conn->real_escape_string($_POST['city']) : '';
|
||||
$zip = isset($_POST['zip']) ? $conn->real_escape_string($_POST['zip']) : '';
|
||||
@@ -34,7 +86,8 @@ if ($field == 'fulladdress') {
|
||||
$latitude = isset($_POST['latitude']) ? $conn->real_escape_string($_POST['latitude']) : '';
|
||||
$longitude = isset($_POST['longitude']) ? $conn->real_escape_string($_POST['longitude']) : '';
|
||||
|
||||
// Aggiorna i campi nel database
|
||||
error_log("Aggiornamento indirizzo: fulladdress=$value, address=$address, city=$city, zip=$zip, country=$country, latitude=$latitude, longitude=$longitude, idhome=$idhome");
|
||||
|
||||
$query = "UPDATE home SET fulladdress = ?, address = ?, city = ?, zip = ?, country = ?, latitude = ?, longitude = ? WHERE idhome = ?";
|
||||
$stmt = $conn->prepare($query);
|
||||
if ($stmt === false) {
|
||||
@@ -42,7 +95,7 @@ if ($field == 'fulladdress') {
|
||||
}
|
||||
$stmt->bind_param("sssssssi", $value, $address, $city, $zip, $country, $latitude, $longitude, $idhome);
|
||||
} else {
|
||||
// Aggiorna altri campi
|
||||
// Aggiornamento di qualsiasi altro campo
|
||||
$query = "UPDATE home SET $field = ? WHERE idhome = ?";
|
||||
$stmt = $conn->prepare($query);
|
||||
if ($stmt === false) {
|
||||
@@ -51,11 +104,11 @@ if ($field == 'fulladdress') {
|
||||
$stmt->bind_param("si", $value, $idhome);
|
||||
}
|
||||
|
||||
// Esegui l'aggiornamento
|
||||
// Esegui la query
|
||||
if ($stmt->execute()) {
|
||||
echo json_encode(['success' => true, 'message' => 'Aggiornamento riuscito']);
|
||||
} else {
|
||||
echo json_encode(['success' => false, 'message' => 'Errore durante l\'esecuzione della query: ' . $stmt->error]);
|
||||
echo json_encode(['success' => false, 'message' => 'Errore: ' . $stmt->error]);
|
||||
}
|
||||
|
||||
$stmt->close();
|
||||
|
||||
Reference in New Issue
Block a user