Module
Download
SMFinder_Geo_PLZ2DBWird verwendet von: SMFinder_Geo Um Ortsnamen oder Postleitzahlen geografische Daten zuordnen zu können, musst du einmalig einen entsprechenden Datensatz importieren - beispielsweise von OpenGeoDB. <?php
function SMFinder_Geo_PLZ2DB($html){
include_once("SMFinder_Config.php");
if ($html) {
include_once("SMFinder_Pagelayout.php");
SMFinder_Pagelayout_Head(1,"");
}
$dblink=mysql_connect($GLOBALS['dbserver'],$GLOBALS['dbuser'],$GLOBALS['dbpasswd']);
mysql_select_db($GLOBALS['dbname'],$dblink);
#alt $fname="text/opengeodb-0.2.4d-UTF8-text-plz.txt";
$fname="text/PLZ.tab";
if (file_exists($fname)) {
$fid = fopen($fname, "r");
while(!feof($fid)){
$line = fgets( $fid, 1024 );
$firstchar=$line[0];
if ($firstchar != "#"){
#alt list($key, $staat, $Bland, $Bez, $Kreis, $Verw, $Ort, $lon, $lat, $PLZ) = explode(";", $line);
list($key, $PLZ, $lon, $lat, $Ort) = explode("\t", $line);
#alt $Ort = utf8_decode($Ort);
$tmp=explode("/",$Ort);
$Ort=trim($tmp[0]);
$PLZ_tmp=substr($PLZ,0,5);
$lat_tmp=substr($lat,0,5);
$lon_tmp=substr($lon,0,5);
$anfrage="insert into ".$GLOBALS['DBTplz']." values ('".$PLZ_tmp."','".$lat_tmp."','".$lon_tmp."','".$Ort."')";
#echo "<b>".$anfrage."</b><br>";
if ($ergebnis=mysql_query($anfrage)){
echo $PLZ.$Ort."<br>";
}else{
echo "Fehler=".mysql_error()."<br>";
};
};
}
fclose($fid);
}else{
echo "<p><b>Bitte lege die Datei <a href='http://www.opengeodb.de'>opengeodb-0.2.2e-UTF8-text-plz.txt</a> in /text/ </b></p>";
}
mysql_close($dblink);
echo "<p>Postleitzahlen in DB</p>";
if ($html) {SMFinder_Pagelayout_Foot(1);}
}
?> IndexFür die Funktionalität des SM-Finders sind viele kleine Tools notwendig. Alle Funktionen beginnen mit SMFinder_ um deren Ursprung zu kennzeichnen. Dem schließt sich die Funktionsgruppe, z.B. Geo_ an, gefolgt vom eigentlichen Namen, der die Aufgabe der Funktion widerspiegeln soll, z.B. PLZ2DB.
Der gesamte Sourcecode darf gemäß GNU General Public License weiterverbreitet werden. Datenbanken | |
|