Runde 2: Von der Statik zur Dynamik - Team Header

Ähnliche Dokumente
Runde 1: Die statischen Website - Team Nav

01 Einführung in PHP. Einführung in PHP 1/13 PHP in Aktion

Shell-Scripting Linux-Kurs der Unix-AG

Shell-Scripting Linux-Kurs der Unix-AG

Shell-Scripting Linux-Kurs der Unix-AG

Schleifen: Immer wieder dasselbe tun

Inhalte in Kurse einfügen. Um Inhalte in Kurse einzufügen, logge dich in Moodle ein und betrete deinen Kurs.

Ein Array ist eine Liste mit Einträgen, fast wie eine Einkaufsliste. Man kann darin also mehr als einen Eintrag in eine einzige Variable speichern.

3D-Druck Feriencamp OpenSCAD - Der Schlüsselanhänger

Funktionen in JavaScript

Übersicht Shell-Scripten

IT-Zertifikat: Allgemeine Informationstechnologien II PHP

1)Login Funktion ohne Datenbank

Einführung in die Scriptsprache PHP

Funk - Was ist das überhaupt?

Modell Bahn Verwaltung. Tutorial. Links. Min. Programm Version 0.65, März w w w. r f n e t. c h 1 / 11

Bash-Scripting Linux-Kurs der Unix-AG

HTML Tutorial Part I - Einführung und erste Texte schreiben

Benutzeranleitung fu r die Webseite des Turnverband Luzern, Ob- und Nidwalden

Funktionen in JavaScript

Objektorientiertes Programmieren (Java)


Erste App (1) Zeichnen für Anfänger

Rückgabewerte von Methoden

Programmsteuerung mit PHP - if/else, elseif,switch

Startup, Shutdown und Reboot eines Raspberry Pi über die HomeMatic CCU

Shell-Scripting Linux-Kurs der Unix-AG

Anleitung zur Benutzung des Admin Control Panel

3D-Druck Feriencamp OpenSCAD - Der Schlüsselanhänger

Customer and Project Services. Teilnehmerunterlagen Aktivitäten

Bash-Skripting Linux-Kurs der Unix-AG

Um Ihren neuen»counter«(besucherzähler) auf einer Webseite zu installieren, benötigen Sie folgenden HTML-Code:

moodle am bfi-kärnten Handbuch

Wer Wird Millionär? Ganz wichtig: Denkt daran in regelmäßigen Abständen zu speichern! Los geht s:

Anleitung. SPIDERnet SMS-Link. HPF GmbH NL Chemnitz

Word 2010 Formulare erstellen mit Inhaltssteuerelementen

Ampelsteuerung Merkblatt 2 Wie wird der Arduino programmiert?

Kapitel 4: PHP-Grundlagen Kapitel 5: PHP-Bausteine für Programme

Zum Bearbeiten ins Backend einloggen

Dynamische Webseiten mit PHP 1

Praktikum Ingenieurinformatik. Termin 4. Funktionen, numerische Integration

Verwalten des App-Katalogs in SharePoint 2013

ArenaSchweiz AG. CMS Concrete5 Erste Schritte

DoIT! ExchangeSync. DoIT! ExchangeSync Version 1.0. S eite 1 von 7

05 For-Schleifen. For-Schleifen 1/7 Was ist eine Schleife?

Gamecontroller Der Bewegungssensor - Links-Rechts-Steuerung

Temperatursensor, Lichtsensor, Berührungssensor, Drucksensor - und Lagesensor. Schaut euch das Poster vom Lege-Rätsel an. Welchen

Deshalb ist hello + world = 0. Umgekehrt gilt das Gleiche, weshalb 8 plus 3 gleich 83 ist. Dies ist in Zeile 5 in Terminal 2 gezeigt. In der Regel sol

Einfache Freebie Erstellung

Kurzanleitung für die Integration einer Signaturdatei in Thunderbird

Mit der Funktion SERIENDRUCK können Sie Briefe, - Nachrichten, Umschläge, Etiketten oder Verzeichnisse erstellen.

Word. Verweise. Textmarken, Querverweise, Hyperlinks

GI Vektoren

Datenbanken für Online Untersuchungen

file://c:\dokumente und Einstellungen\Admin\Eigene Dateien\NetObjects Fusion 11...

Deine Notizen. II. Tutorial x-callback: Das Geheimnis der Auto-Funktion für Aufgaben. Was brauchst Du als Grundlage? Sonderzeichen (URL Encoding)

Deine Notizen Was brauchst Du als Grundlage? Sonderzeichen (URL Encoding) Syntax

AutoTexte und AutoKorrektur unter Outlook verwenden

ATLAS 2x2 Server Installation ERSTELLT BY MARKUS TUVOK VERSION 1.4 // MITTEN IN DER NACHT LETZTES UPDATE

Aufgabenblatt 1: - Präsenzübung für die Übungen Do Mi Ausgabe Mi

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

VOWiki Informationen für Autoren

Objekte haben eine eigene Notation, also Schreibweise, beim Aufruf:

Einführung in PHP. (mit Aufgaben)

Joomla Medien Verwaltung. 1)Medien auf den SERVER laden:

Word 10. Verweise Version: Relevant für: IKA, DA

Solaranzeige.de. Informationen Version 1.4 vom April 2018

Fachbericht DPR. Name: René Wagener. Klasse: CI3O1. Fachlehrer: Herr Balog

Adafruit Ultimate GPS

Word 10. Verweise: Textmarken, Hyperlinks, Querverweise Version: Relevant für:

41.2 LUA Grundlagen - Funktionen

Ionic 2-Teil bereits mit der IDE Visual Studio Code

COPLANER - ERSTE SCHRITTE. Benutzerleitfaden. Verfasserin: Petra Hendrich COPLANER - ERSTE SCHRITTE!... 2 LOGIN UND EIGENE DATEN ÄNDERN!...

Open Office Writer 1

Einführung in die Skriptsprache PHP

[Arbeiten mit dem Nvu Composer]

Stand Seite 1 von 19

affilinet_ Flash-Spezifikationen

Es gibt immer einen Schlüssel und einen zugehörigen Wert,

Inhalt. Seite 1 von 14

Gamecontroller Der Bewegungssensor - Links-Rechts-Steuerung

Oberfläche von GroupWise WebAccess Basic

SEND-IT Bedienungsanleitung

Wocheninfo auf der Webseite aktualisieren

Nutzung von REST Clients für Allyouneed Marktplatz

Benutzerhandbuch. Liquid-Preisvergleichsportale. Version

(3) Button-Klick & Texteingabe

Digitale Unterschriften

Studienarbeit Bildergalerie

Vorbemerkung. Allgemeines zu Shell Scripts. Aufruf. Einfaches Beispiel

Ein- und Ausgabe (I/O)

Bash-Skripting Linux-Kurs der Unix-AG

Step by Step Anleitung. Einrichtung Shirt-Shop auf einem Netclusiv Webspace

Fertiges Video. Videos komprimieren. Videos hochladen. Texte verfassen. Fotos hochladen. Videos einbetten. Facebook verwalten.

Anleitung Veranstaltung erfassen Baar, 8. April 2016

Erste Datenbereinigung

Transkript:

Es gibt eine neue Nachricht von Alice... Von: mail@alice-kleiner-shop.de An: topteam@schuelerlabor-informatik.de Betreff: Re:Anfrage bezüglich Erstellung eines Online-Shops Hallo, liebes Entwicklerteam! Euer Designentwurf hat mir schon sehr gut gefallen und ich denke, wir können somit das Hauptprojekt in Angriff nehmen. Das Team, das an der Datenbank arbeitet, hat mir nun auch eine Beschreibung der Schnittstellen zukommen lassen, sodass ihr nun eure bisherige Arbeit mit Werten aus der Datenbank füttern könnt. Die Beschreibung der Schnittstellen befindet sich wieder im Anhang... Gruß, Alice Ah - jetzt kann es also losgehen mit der Dynamik, also mit dem Einfügen von Werten, wenn die Seite angefragt wird. Um dies zu bewältigen, werden wir in diesem Abschnitt: Die PHP-Umgebung <?php...?> kennenlernen. Den PHP-Befehl echo kennenlernen. Den Umgang mit Variablen in PHP erlernen. Die sogenannten Klassen Datenbank, Produkt und Kategorie nutzen Werte über die URL an unser Script weiterleiten Der echo-befehl Los geht es direkt mit dem Befehl echo. Hier ist der Name Programm, denn echo gibt einfach das aus, was man ihm hineinschreibt: echo "Hallo"; fügt also genau an der Stelle, an der es steht einfach ein Hallo ein. Doch Moment - war da nicht etwas eben mit Stellen, die markiert werden, und war das erste Ziel nicht: Die PHP-Umgebung <?php...?> kennenlernen??? Genau! Denn wenn ihr den echo-befehl einfach so in euer Dokument schreibt, wird dies nicht als Befehl erkannt. 1

Alle Befehle, die für den PHP-Interpreter (das war das Programm, was den PHP-Code übersetzt) wichtig sind, müssen in diese Klammern gesetzt werden: <?php BEFEHL;?> Nur so werden sie erkannt. Natürlich muss nicht jeder Befehl einzeln in diese Klammern gesetzt werden. Es können auch mehrere Befehle zusammengesetzt werden: <?php BEFEHL1; BEFEHL2;?> Wobei man in so einem Fall am besten jeden Befehl in eine eigene Zeile packt. Auch schon zu sehen und äußerst wichtig ist das Semikolon, das nach jedem Befehl unbedingt da stehen muss - sonst gibt s nen Fehler... Also zurück zum echo-befehl: Dieser müsste also beim Ausprobieren dann in seiner Umgebung so aussehen: <? echo "Hallo";?> Probiert es am besten direkt einmal aus: Fügt in euren Bereich den echo-befehl ein und testet das Ergebnis Denkt immer daran, dass nach dem Ändern der Datei diese auch hochgeladen werden muss... Überprüft vorher jedoch immer noch einmal den Code - insbesondere auf vergessene Semikolons... Damit habt ihr euren ersten PHP-Befehl geschrieben und ausgeführt. Aber wenn man ehrlich ist, hätte man für diese Aufgabe auch einfach Hallo an die entsprechende Stelle schreiben können... Seine eigentliche Funktion entfaltet echo erst, wenn man mit Variablen arbeitet. Variablen in PHP Variablen sind, wie ihr eben gesehen habt, so eine Art Ablagefach für alles Mögliche, sowohl für einfache Werte wie 3 oder "Hallo", als auch für ganze Stapel von Anweisungen (sogenannte Funktionen). Variablen werden in PHP immer mit einem $ markiert. 2

Um einen Wert einer Variable zuzuweisen schreibt man ihn hinter die Variable mit einem Gleichheitszeichen: <?php $Gruss = "Hallo";?> Schreibt man nun <?php $Gruss = "Hallo"; echo $Gruss;?>, so wird an der Stelle wieder Hallo ausgegeben. Doch damit noch nicht genug. Man kann Variablen und Werte auch kombinieren, indem man sie mit einem Punkt verbindet: <?php $Gruss = Hallo ; $Welt = Welt ; $InfoSphere = InfoSphere ; echo $Gruss..$Welt; echo $Gruss..$InfoSphere;?> führt zu: Hallo WeltHallo InfoSphere. Dieses Beispiel zeigt auch: echo gibt wirklich nur das aus, was man ihm sagt. Wenn man also ein Leerzeichen haben möchte, so muss man es selbst ergänzen. Wichtig ist, dass ihr bei den Variablen auf Groß- und Kleinschreibung achtet... $Hallo ist für PHP eine ganz andere Variable als $hallo... Doch jetzt seid ihr erst einmal wieder dran: 1. Erstellt mehrere Variablen und weist ihnen Werte zu. 2. Baut aus den Variablen nun Sätze, die ihr dann mit dem echo-befehl ausgebt. 3. Kleiner Tipp: Man kann die Variablen auch in einer anderen <?php...?> Umgebung erstellen, als man sie nutzt, z.b.: <?php $Variable=1;?> Der Wert von Variable ist: <?php echo $Variable;?> 3

Produkte und Kategorien in Variablen Neben Zahlen und Zeichenketten kann man auch noch mehr in einer Variablen speichern. Dieses Konzept nennt man Klasse. Was das genau ist, lernt ihr in der Oberstufe. Man kann sich das aber in etwa so vorstellen: $kategorie Statt der Zahl oder der Zeichenkette wird in der Variablen ein Pfeil gespeichert, der auf einen Zettel zeigt. Auf dem Zettel stehen dann die Daten der Kategorie oder des Produktes. Kategorie ID: 1 Titel: Torten und Kuchen Beschreibung: Frisch und lecker auch bei ihrem Bäcker Doch wie kommt man nun an die Werte auf dem Zettel? Hierzu gibt es Funktionen die, zu dem Zettel gehören: $kategorie Kategorie ID: gibid() Titel: gibtitel() Beschreibung: gibbeschreibung() Über den Pfeil -> kann man von der Variablen auf die Funktion zugreifen. Um zum Beispiel an den Titel zu kommen schreibt man: $kategorie->gibtitel(); Welche Funktionen es für die unterschiedlichen Klassen gibt, seht ihr auf dem Beiblatt Klassen. Um das ganze zu verdeutlichen hier einmal ein Beispiel für die Ausgabe des Titels einer Kategorie: Nehmen wir an, wir hätten eine Variable $kategorie, die bereits eine Kategorie enthält (wie man dahin kommt, sehen wir später). Nun soll der Titel ausgegeben werden: <?php echo $kategorie->gibtitel();?> Nun passiert folgendes: $kategorie $kategorie verweist auf den Zettel mit der Kategorie. Die Funktion gibtitel() folgt also dem Pfeil gibtitel() und schaut nach, was bei Titel steht. PHP macht also folgende Schritte: <?php echo $kategorie->gibtitel();?> wird zu <?php echo "Torten und Kuchen";?> wird zu Torten und Kuchen Kategorie ID: 1 Titel: Torten und Kuchen Beschreibung: Frisch und lecker auch bei ihrem Bäcker 4

Und wie kommt das Ganze in die Variable? Bis jetzt sind wir ja einfach davon ausgegangen, dass unsere Kategorie bereits in der Variablen ist. Doch wie bekommt man es nun dort hinein? Hierfür gibt es eine für euch vorgefertigte Variable namens $datenbank. Auf dem Beiblatt Klassen findet ihr in dem Kästchen zur Datenbank wieder eine ganze Liste von gib...()-funktionen - insbesondere auch die Funktion gibkategoriemitid($id). Diese Funktion schaut in der Datenbank nach der Kategorie und gibt diese an die davorstehende Variable weiter Wollen wir nun also die Kategorie mit der Nummer 1 aus der Datenbank holen und in unserer Variable $kategorie speichern, so geht dies, indem man wieder die Funktion mit gibkategoriemitid($id) mit dem -> an die Variable $datenbank hängt: <? $kategorie = $datenbank->gibkategoriemitid(1);?> Doch zurück zur Frage, wie die Variable nun gefüllt wird: Die Werte von Kategorie 1 sind nun von der Datenbank in die Variable $kategorie geladen worden und können durch z.b. die Funktion gibtitel() abgefragt werden: <? $kategorie = $datenbank->gibkategoriemitid(1);?> <h1><?php echo $kategorie->gibtitel();?></h1> Dann kommen wir von der Theorie mal zur Praxis: 1. Erstellt am Anfang der Datei kopf.php eine Variable und füllt sie mit der Kategorie mit der Nummer 1 aus der Datenbank. 2. Gebt den Titel des Produktes an der entsprechenden Stelle in eurer bisher statischen Website aus. 3. Schaut euch das Ergebnis im Browser an. 4. Ladet nun die Kategorie mit der Nummer 2 aus der Datenbank, indem ihr die 1 aus $datenbank->gibkategoriemitid(1) durch eine zwei ersetzt. 5. Schaut euch das Ergebnis erneut im Browser an. 6. Ändert nun die restlichen Stellen in eurer Website, wo bis jetzt noch die Testdaten standen. 7. Testet nun das Gesamtergebnis auf eurer Seite mit verschiedenen Produkten aus der Datenbank. Werte an den Server übermitteln Eure Seite wird zwar nun bereits mit Werten aus der Datenbank gefüllt, aber eine wirkliche Erleichterung bietet das natürlich noch nicht, wenn jedesmal die Website geändert und hoch geladen werden muss.um dieses Problem zu lösen gibt es die Möglichkeit Werten per URL zu übergeben. 5

Vielleicht habt ihr das ja schon einmal gesehen z.b. bei der Suche im Internet: https://www.google.de/search?q=schuelerlabor+informatik&gws_rd=cr,ssl&ei=ciwzvafalcplamgfg Alles hier Markierte sind Daten, die in diesem Fall an Google übergeben werden. Was man an diesem Beispiel schon schön sehen kann, ist der Aufbau der URL, wenn hier Daten mitgegeben werden sollen:? markiert den Start der Daten - alles was hiernach folgt, wird als Variablen und Werte angesehen. variable=wert sind dann die einzelnen Kombinationen aus Variablennamen und Werten, die übergeben werden. & nutzt man, um mehrere Variablen/Werte zu trennen Besprecht euch mit eurem Main Team und eurem Nav Team und legt zwei Namen für die Variablen fest mit denen die Nummer der Kategorie und des Produktes übergeben werden sollen. Nachdem ihr im Team Variablennamen festgelegt habt, kommen wir nun zu deren Verwendung: Bis jetzt habt ihr beim Testen eurer Seite ja die Seite http://shopxy.schuelerlabor.informatik.rwth-aachen.de/ aufgerufen, wobei XY eurer Teamnummer entspricht. Wenn ihr nun stattdessen http://shopxy.schuelerlabor.informatik.rwth-aachen.de/?<kategorienummer>=1, wobei <Kategorienummer> durch euren gewählten Variablennamen ersetzt wird, aufruft, so übergebt ihr damit euren ersten Wert an euere Website... Doch wie arbeitet man nun damit? Um an den übergebenen Wert zu kommen, gibt es in PHP eine ganz besondere Variable: $_GET. Diese Variable ist eigentlich wieder eine ganze Reihe von Variablen. Für uns ist an der Stelle nur wichtig, dass man in eckigen Klammern angeben kann, welchen übergebenen Wert man nutzen möchte: $_GET[ <Kategorienummer> ] 1. Ersetzt die Stelle, die ihr bis jetzt von Hand bearbeitet habt, durch die neue Variable $_GET[ <Kategorienummer> ]. 2. Testet eure Website nun mit der neuen Adresse und tauscht an der Stelle die Nummern aus Wow, damit habt ihr den wesentlichen Teil der Dynamik einer Website verstanden!!! Wieder könnt ihr verbliebene Zeit für weitere Verschönerungen an eurer Seite nutzen. Das nächste ist dann wohl ein bisschen Feintuning... 6