Salve ragazzi, questa funziona introdotta con il php5 serve a lavorare con xml , superando i limiti del Dom.
Io ho fatto questo script usando il simplexml ma nonostante legga il file e mi mostra tutti i parametri presenti nel foglio non riesce ad aggiornarmi il database e non mi da manco segni di errore.
Codice PHP:
<?php
if (file_exists('test.xml')) {
include("config.php");
$xml = simplexml_load_file('test.xml');
var_dump($xml);
foreach($xml->amministratore as $amministratore) {
$id = $amministratore->id;
$id_amministratore = $amministratore->id_amministratore;
$denominazione = $amministratore->denominazione;
$indirizzo = $amministratore->indirizzo;
$cap = $amministratore->cap;
$iva = $amministratore->iva;
$codicefiscale = $amministratore->codicefiscale;
$tel_cell = $amministratore->tel_cell;
$tel_ufficio = $amministratore->tel_ufficio;
$tel_casa = $amministratore->tel_casa;
$fax = $amministratore->fax;
$email = $amministratore->email;
$homepage = $amministratore->homepage;
$username = $amministratore->username;
$password = $amministratore->password;
$check_sql = "SELECT * FROM amministratore WHERE id = $id";
$check_query = @mysql_query($check_sql);
if(@mysql_num_rows($check_query) > 0) {
$update_sql = "UPDATE amministratore SET id_amministratore = $id_amministratore, denominazione = $denominazione, indirizzo = $indirizzo, cap = $cap, iva = $iva, codicefiscale = $codicefiscale, tel_cell = $tel_cell, tel_ufficio = $tel_ufficio, tel_casa = $tel_casa, fax = $fax, email = $email, homepage = $homepage, username = $username, password = $password WHERE id = $id";
$update_query = @mysql_query($update_sql);
if(!$update_sql) die("Errore MySQL: ".mysql_error()."
Query:
".$query);
} else {
$insert_sql = "INSERT INTO amministratore (id_amministratore, denominazione, indirizzo, cap, iva, codicefiscale, tel_cell, tel_ufficio, tel_casa, fax, email, homepage, username, password) VALUES ('$id_amministratore', '$denominazione', '$indirizzo', '$cap', '$iva', '$codicefiscale', '$tel_cell', '$tel_ufficio', '$tel_casa', '$fax', '$email', '$homepage', '$username', '$password')";
$insert_query = @mysql_query($insert_sql);
if(!$insert_sql) die("Errore MySQL: ".mysql_error()."
Query:
".$query);
}
}
} else {
exit('Failed to open test.xml.');
}
?>
questo script, il var dump funziona , infatti quando lancio la pagina mi mostra questi risultati:
Codice PHP:
object(SimpleXMLElement)#1 (1) { ["amministratore"]=> object(SimpleXMLElement)#2 (15) { ["id"]=> string(1) "2" ["id_amministratore"]=> string(4) "1050" ["denominazione"]=> string(14) "paolo Giuseppe" ["indirizzo"]=> string(22) "via pian due torri, 45" ["cap"]=> string(10) "00146 Roma" ["iva"]=> string(11) "04625381001" ["codicefiscale"]=> string(1) "0" ["tel_cell"]=> string(1) "0" ["tel_ufficio"]=> string(1) "0" ["tel_casa"]=> string(1) "0" ["fax"]=> string(1) "0" ["email"]=> string(20) "werwolfe@werwolfe.it" ["homepage"]=> string(19) "www.freestyleweb.it" ["username"]=> string(5) "pippo" ["password"]=> string(32) "0c88028bf3aa6a6a143ed846f2be1ea4" } }
Quindi come potete vedere riesce a leggere i dati dal xml a funzionare fino a var dum mentre l'inserimento nel db non mi funzione, dov'è l'errore?
grazie per le risposte