R: [Php-it] [OT] Lista Comuni e Province..
Heber D'Alberto
heber-lists at dalberto.it
Wed Mar 1 16:47:31 CET 2006
--------- Messaggio Originale --------
Da: php-it at lists.ziobudda.net
Per: "php-it at lists.ziobudda.net" <php-it at lists.ziobudda.net>
Oggetto: Re: R: [Php-it] [OT] Lista Comuni e Province..
Data: 01/03/06 15:45
O meglio ancora, uno script php che download il file zip, lo scompatta e
crea il .sql :)))
Riporto le quattro righe di codice che avevo buttato giù per recuperare i
dati da quel dannato file nel caso possa interessare a qualcuno.
<?php
# Converte l'elenco (Localita.txt) dei cap/comuni presente sul sito delle
Poste
# Italiane e li inserisce all'interno della tabella comuni.
# Infine crea il file elenco.txt che conterrà le query pulite con i dati
require_once("DB.php");
$dsn= "mysql://utente:password@localhost/cap";
$file=fopen("Localita.txt", "r");
for ($i=0; !feof($file); $i++)
{
$buffer[$i]=fgets($file, 130);
}
fclose($file);
for ($i=0, $j=0; $j<=count($buffer); $i++)
{
$righe[$i]=$buffer[$j];
$j=$j+2;
}
$db=DB::connect($dsn);
if (DB::iserror($db))
{ echo $error=$db->getMessage();
exit;
}
$elenco="";
for ($i=0; $i<count($righe)-1; $i++)
{
$cap=substr($righe[$i], 4, 5);
$prov=substr($righe[$i], 0, 2);
$spazi=strpos($righe[$i], " ", 11);
$comune=substr($righe[$i], 11, ($spazi-1)-10);
$comune=addslashes($comune);
$query='INSERT INTO comuni (comune, cap, provincia) '.
'VALUES ("'.$comune.'", "'.$cap.'", "'.$prov.'")';
$elenco.=$query."\n";
$result=$db->query($query);
if (DB::iserror($result))
{
echo $error=$result->getMessage();
exit;
}
}
$db->disconnect();
$file=fopen("elenco.txt", "w");
fwrite($file, $elenco);
fclose($file);
?>
Heber D'Alberto
More information about the Php-it
mailing list