Module
Download
SMFinder_Admin_importGeoWird verwendet von:
Um fehlende geographische Angaben ergänzen zu können, nutzt der SM-Finder den Datenbestand vom openGeoDB-Projekt.
Diese können mit dieser Funktion beim Installieren des SM-Finders einmalig in die Datenbank importiert werden. Hierzu muss die Quelldatei opengeodb-0.2.2e-UTF8-text-plz.txt ins Arbeitsverzeichnis kopiert werden. <?php
function SMFinder_Admin_importGeo(){
include("SMFinder_Config.php");
echo "SMFinder_Admin_importGeo<p>";
include("SMFinder_DB.php");
$fname=$GLOBALS['someDir']"/opengeodb-0.2.2e-UTF8-text-plz.txt";
if (file_exists($fname)) {
$dblink=mysql_connect($dbserver,$dbuser,$dbpasswd);
echo $dbname.$dblink."server<p>";
mysql_select_db($dbname,$dblink);
$fid = fopen($fname, "r");
echo "fn".$fname;
while(!feof($fid)){
$line = fgets( $fid, 1024 );
$firstchar=$line[0];
if ($firstchar != "#"){
list($key, $staat, $Bland, $Bez, $Kreis, $Verw, $Ort, $stadtteil, $dummy, $dummy1, $lon, $lat, $PLZ) = explode(";", $line);
$Ort = utf8_decode($Ort);
$PLZ_tmp=substr($PLZ,0,5);
$lat_tmp=substr($lat,0,5);
$lon_tmp=substr($lon,0,5);
$anfrage="insert into ".$DBTplz." values ('$PLZ', '$lat_tmp', '$lon_tmp', '$Ort')";
//echo $anfrage."<br>";
if ($ergebnis=mysql_query($anfrage)){
echo $PLZ.$Ort."<br>";
}else{
echo "Fehler=".mysql_error()."<br>";
}
}
} //while
fclose($fid);
mysql_close($dblink);
echo "<p>Postleitzahlen in DB</p>";
}else{
echo "<p><b>Bitte lege die Datei <a href='http://www.opengeodb.de'>opengeodb-0.2.2e-UTF8-text-plz.txt</a> ins Arbeitsverzeichnis. </b></p>";
}
}
?>
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 | |
|