• Keine Ergebnisse gefunden

6. Praktikum –Serverseitige Skript-Verarbeitung mit PHP

N/A
N/A
Protected

Academic year: 2022

Aktie "6. Praktikum –Serverseitige Skript-Verarbeitung mit PHP"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Fakultät Informatik/Mathematik Internettechnologien für Geoinformatik/Management Prof. Dr.-Ing. habil. P. Sobe

6. Praktikum –Serverseitige Skript-Verarbeitung mit PHP

In diesem Praktikum sollen Webinhalte durch ein PHP-Skript erzeugt werden.

Ausgangspunkt ist eine Weltkarte und eine überlagerte SVG-Grafik, die positionsbezogene Daten bereitstellt. Die SVG-Grafik soll serverseitig und dynamisch durch das PHP-Skript erzeugt werden.

Laden Sie sich dazu die Dateien flightinfo.txt und worldmap_85deg.jpg herunter!

Nennen Sie die flightinfo.txt -Datei in eine PHP-Datei um und installieren Sie diese Datei zusammen mit der Bilddatei (worldmap_85deg.jpg) im Dokumentpfad eines Webservers!

Die Weltkarte ist eine Mercator-Projektion, die bis zum 85. Breitengrad geführt wird.

Die Grafik hat eine Ausdehnung von 2400x2400 Pixeln und den Mittelpunkt an der Position x=1200px, y=1200px. Der Mittelpunkt entspricht dem Schnittpunkt von Äquator und Nullmeridian. Ausgehend von Positionen die mit ihrer geografischen Breite und Länge in Dezimalgrad gegeben werden, sollen Markierungen in die Karte eingetragen werden.

Teilaufgaben:

a) Der Start- und Zielpunkt eines Flugs (Berlin Tegel und New York JFK) werden in der Karte bislang an vorab berechneten Kartenpositionen eingetragen!

Berechnen Sie diese Kartenpositionen aus der geografischen Position der Flughäfen innerhalb der PHP-Webseite und tragen Sie den Start und Zielpunkt entsprechend der berechneten Positionen ein! Die Umrechnung ist in Umrechnung_koord.pdf beschrieben.

Berlin Tegel, TXL: 52° 33‘ 34.87‘‘ Nord, 13° 17‘ 15.76‘‘ Ost (52.559686°, 13.287711°) New York, JFK: 40° 38‘ 23.10‘‘ Nord, 73° 46‘ 44.13‘‘ West (40.63975°, -73.778925°)

Kontrollieren Sie, ob sich die richtigen Pixelpositionen 1289, 785 für Berlin Tegel und 708, 902 für New York JFK ergeben!

b) Gestalten Sie Ihr Programm so, dass die Berechnung der Pixelposition aus den Koordinaten in einer PHP-Funktion vorgenommen wird!

c) Variieren Sie 100 Positionen zwischen Berlin Tegel und New York JFK, z.B.

durch gleichmäßige lineare Annäherung der geografischen Breite und Länge an die Zielposition! Diese Positionen sollen eine Flugroute darstellen und in die Karte eingetragen werden (Hinweis: Die kürzeste Flugroute müsste man entlang eines Großkreises führen, was hier nicht gefordert ist.)

Fortsetzung folgt umseitig …

(2)

Fakultät Informatik/Mathematik Internettechnologien für Geoinformatik/Management Prof. Dr.-Ing. habil. P. Sobe

d) Lesen Sie die Datei flights.txt durch das PHP-Skript ein! Die Datei finden Sie zusammen mit der Aufgabenstellung auf der Webseite zur Lehrveranstaltung.

Platzieren Sie die Datei im Publikationsverzeichnis Ihres Webservers!

Die Datei enthält je Zeile sechs verschiedene Angaben:

Startort geogr. Länge des Startorts geogr. Breite des Startorts Zielort geogr. Länge des Zielorts geogr. Breite des Zielorts

Für jede Flugroute (d.h. für jede Zeile) soll die Position des Starts und des Ziels, sowie die Flugroute in die Webseite eingetragen werden.

Zum Einlesen der Daten und der Zuweisung auf die einzelnen PHP-Variablen können Sie sich an dem folgenden Skriptfragment orientieren:

$handle = fopen("flights.txt","r");

if ( $flugdaten = fscanf($handle,"%s %f %f %s %f %f\n") ) {

list($name_start,$gln_start,$gbr_start,$name_ziel,$gln_ziel,$gbr_ziel)=

$flugdaten;

// Koordinatentransformation und Zeichnen }

fclose($handle);

e) Erstellen Sie eine Formular-Webseite, die eine Datei im Format der vorgegebenen flights.txt durch Inhalte aus den Formulareingabefeldern erzeugt!

Nach Eingabe von Start und Ziel mit deren geografischen Koordinaten soll in Ihrer Datei jeweils eine Zeile angehangen werden.

Zum Schreiben in eine Datei wird Ihnen das folgende Skriptfragment bereitgestellt:

fwrite($handle, $startort);

fwrite($handle, " ");

fwrite($handle, $gln_startort);

fwrite($handle, " ");

f) Lesen Sie in Ihrer PHP-Webanwendung nun die durch die Formulareingabe erzeugte Datei ein! Es sollten alle enthalten Zeilen durch eine grafische Anzeige (analog zur Ausgangsstecke Berlin – New York) repräsentiert werden.

Später wollen wir die Flugdaten dann auch aus einer Datenbank lesen. In den folgenden Praktika wird eine Nutzerinteraktion durch die Kombination von JavaScript, AJAX, PHP und Datenbankzugriff ermöglicht.

Referenzen

ÄHNLICHE DOKUMENTE

[r]

a) Starten Sie die Datenbankadministration über das XAMPP-Control-Panel (zweite Button-Reihe von oben, Admin-Button)! Die Datenbankadministration wird im Web-Browser über

Seinem Buch liegen nicht nur Ermitt- lungsakten und Untersuchungsberich- te zugrunde, sondern auch Gespräche mit Staatsanwälten, Richtern, Kom- missaren und Journalisten,

Wissenschaftliche Untersuchungen und konzeptionelle Grundlagenarbeit sind aus Sicht des Süd­Konsortiums wichtig für die Stärkung und Wirkung sozialunternehmerischer Initiativen in

Wenn die Malerfarbe gründlich getrocknet ist, kannst du vorsichtig das Malerkrepp abziehen.. Mit dieser Methode werden die Ränder schön glatt

Sucht man jedoch einen Normalvektor zu zwei (nicht parallelen)

Da die Atmung im dargestellten Experiment nicht immer sehr regelmäßig war, empfiehlt sich für die Auswertung einiger Größen (v.a. Inspirationsvolumen) die Nutzung des

Fünf Projekte konnten aufgrund des Erfolges in der ersten Phase auch in einer zweiten Projektphase unterstützt werden, und einige dieser da- bei entstandenen