Seite 2 von 2 ErsteErste 12
Ergebnis 16 bis 21 von 21

Thema: Aus POCSAG Text per PHP Strasse + Ort auslesen

  1. #16
    Registriert seit
    07.05.2008
    Beiträge
    587
    Hey Felix,

    Super vielen Dank das scheint zu klappen !

    Bin leider kein PHP Profi könnte mir ggf. jemand nochmal bissle helfen ?

    Habe nun folgendes:

    PHP-Code:
    <?php
    //Mapinput für Google Map´s

    $mapinput "C:\\xampp\\php\\Alarm.txt ";
    $handle fopen($mapinput"rb");
    $file=file($mapinput);

    //Testweise direkt zuweisen ....
    //$mapinput = "BMA*Musterstadt*Musterstrasse 23*Musterhaus XY Melder 12*";


    //* wird als Teiler deklariert um die einzelnen Abschnitte abrufen zu können
    $teile explode("*"$mapinput);

    // Leerzeichen zwischen Straße + Hausnummer entfernen:
    $suchmuster[0] = '/ /';
    $ersetzungen[0] = '';
    $strasse=preg_replace($suchmuster$ersetzungen$teile[2]);



    //Ausgabe Ort + Strasse direkt zusammen
    echo "$teile[1]+$strasse";

    echo 
    "<a href='http://maps.google.de/maps?f=q&hl=de&q=$teile[1]+$strasse' target='_blank'>MAP</a>";http://maps.google.de/maps?f=q&hl=de&q=$teile[1]+$strasse";

    ?>
    Leider klappt das aber nicht so ganz mit dem einlesen / verarbeiten von dem Textfile kann mir jemand sagen warum ?

    In der Alarm.txt steht in der 1. Zeile das:

    BMA*Musterstadt*Musterstrasse 23*Musterhaus XY Melder 12*

    Wenn ich aber z.B. $mapinput direkt deklariere anstatt es über das Textdokument zu machen klappt es ($mapinput = "BMA*Musterstadt*Musterstrasse 23*Musterhaus XY Melder 12*"; )


    Dann vermute ich mal muss ich wie in der letzten Echo angabe mal angedeutet den ganzen link auch als variable speichern und dann mittels Html aus der PHP Datei auslesen lassen richtig ? Wie ruft man das am besten auf ?


    Vielen Dank für jeden Tipp !

    MFG Beatzler

  2. #17
    Registriert seit
    28.11.2005
    Beiträge
    2.759
    Du musst das Dateihandle nicht nur öffnen, sondern auch die Daten aus dem Handle
    lesen und DIESE Daten verarbeiten.

    In deinem Beispiel "verarbeitest" du nicht den Dateiinhalt, sondern den Dateinamen.

    .. f_read() liegt mir auf der Zunge, aber das ist wohl eher ein Echo aus der ANSI-C-Zeit..

    In der PHP Referenz gibt's aber doch ein Beispiel zum "Datei lesen", wenn ich mich recht
    entsinne..

    Gruss,
    Tim
    --
    In a world without walls and fences, who needs Windows and Gates ??

    Meine private Webseite: http://www.db1jat.org

  3. #18
    Registriert seit
    10.12.2003
    Beiträge
    3.902
    fopen kannst dir sparen, dazu nimmst du doch file()...

    implode() is nur da für den Fall, dass mehrere Zeilen in der Datei stehen.
    PHP-Code:
    <?php
    //Mapinput für Google Map´s

    $mapinput "C:\\xampp\\php\\Alarm.txt ";
    $file=file($mapinput);

    //Testweise direkt zuweisen ....
    //$mapinput = "BMA*Musterstadt*Musterstrasse 23*Musterhaus XY Melder 12*";


    //* wird als Teiler deklariert um die einzelnen Abschnitte abrufen zu können
    $teile explode("*"implode("",$file));

    // Leerzeichen zwischen Straße + Hausnummer entfernen:
    $suchmuster[0] = '/ /';
    $ersetzungen[0] = '';
    $strasse=preg_replace($suchmuster$ersetzungen$teile[2]);



    //Ausgabe Ort + Strasse direkt zusammen
    echo "$teile[1]+$strasse";

    echo 
    "<a href='http://maps.google.de/maps?f=q&hl=de&q=$teile[1]+$strasse' target='_blank'>MAP</a>";http://maps.google.de/maps?f=q&hl=de&q=$teile[1]+$strasse";

    ?>
    Felix
    felix[null][null][null]@funkmeldesystem.de

  4. #19
    Registriert seit
    07.05.2008
    Beiträge
    587
    Hey,

    vielen Dank euch beiden ! Hat nun geklappt.

    Habe auch noch die Stadt "filtern" lassen falls es dort zum Beispiel auch noch ein Leerzeichen oder eine Zahl gibt oder so:

    Aktueller Code:

    PHP-Code:
    <?php
    //Mapinput für Google Map´s

    $mapinput "C:\\xampp\\php\\Alarm.txt ";
    $file=file($mapinput);




    //  wird als Teiler zwischen * deklariert um die einzelnen Abschnitte abrufen zu können
    //implode() is nur da für den Fall, dass mehrere Zeilen in der Datei stehen.
    $teile1 explode("*"implode("",$file));

    // Leerzeichen zwischen Straße + Hausnummer entfernen und durch + ersetzen:
    $suchmuster[0] = '/ /';
    $ersetzungen[0] = '+';
    $strasse=preg_replace($suchmuster$ersetzungen$teile1[2]);


    // Leerzeichen zwischen Stadtangabe entfernen und durch + ersetzen:
    $teile2 explode("*"implode("",$file));
    $suchmuster2[0] = '/ /';
    $ersetzungen2[0] = '+';
    $stadt=preg_replace($suchmuster2$ersetzungen2$teile2[1]);


    //Ausgabe Ort + Strasse direkt zusammen
    echo "$stadt+$strasse";


    ?>
    Soweit so gut scheint es jetzt in der Command Box zu klappen.

    Hättet ihr nochmal nen Tipp wie ich Ihr das ganze nun am besten direkt mit Google Maps aufrufen würdet ?Denke mal das müsste den ja wieder im HTML Teil ablaufen oder ? Das ich dann halt direkt im Link die Paramter &Strasse+&stadt eintrage, quasi so:

    http://maps.google.de/maps?f=q&hl=de&q=$stadt+$strasse

    wie würdet ihr das ganze dann direkt aufrufen ? Über Html mittels Popup ( z.B. Javaskript) oder gibs da direkt irgend ne PHP Funktion für welche nur eine Seite öffnet und denn halt direkt mit dem Link ohne nochmal nen PopUp zu öffnen oder so ?

    Vielen Dank nochmals für eure Tipps :)

    MFG Beatzler

  5. #20
    Registriert seit
    07.05.2008
    Beiträge
    587
    Hey,

    ich habs nun so hinbekommen wie ich es gerne hätte und es läuft wunderbar :-)

    Danke nochmals für die Hilfestellungen !

    PHP-Code:
    <?php
    //Mapinput für Google Map´s

    $mapinput "C:\\xampp\\php\\Alarm.txt ";
    $file=file($mapinput);

    //  wird als Teiler zwischen * deklariert um die einzelnen Abschnitte abrufen zu können
    //  implode() is nur da für den Fall, dass mehrere Zeilen in der Datei stehen.
    $teile1 explode("*"implode("",$file));

    // Leerzeichen zwischen Straße + Hausnummer entfernen und durch + ersetzen:
    $suchmuster[0] = '/ /';
    $ersetzungen[0] = '+';
    $strasse=preg_replace($suchmuster$ersetzungen$teile1[2]);

    // Leerzeichen zwischen Stadtangabe entfernen und durch + ersetzen:
    $teile2 explode("*"implode("",$file));
    $suchmuster2[0] = '/ /';
    $ersetzungen2[0] = '+';
    $stadt=preg_replace($suchmuster2$ersetzungen2$teile2[1]);

    $googlemapURL="http://maps.google.de/maps?&hl=de&t=k&z=18&view=text&output=embed&q=$stadt+$strasse";
    header("Location: $googlemapURL");

    ?>
    Weiß einer reinzufällig den LINK Parameter um in der Satelliten Ansicht direkt immer die Labels mit den Straßen einzublenden ?! Das ist der einzigste der mir aktuell noch fehlt....


    MFG Beatzler

  6. #21
    Registriert seit
    24.07.2009
    Beiträge
    29
    Does this work today? I´ve tryed but cant get it to work.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •