Voraussetzung zur Nutzung der Scriptsprache PHP - Es muss zum Ausführen des Codes ein Webserver (z.b. Apache) vorhanden sein! - Die Programmierung kann, muss aber nicht auf dem Server durchgeführt werden. - Programmierung mit einem handelsüblichen Editor möglich. - Einfache z.b. mit NotePad ++, UltraEdit32, UltraEditStudio - Professionelle Programmierung nutzt oft eine Kombination Editor Debugger - Es muss auf dem Server ein Interpreter installiert sein: Windows basierende Systeme ( PHP.Exe ) da es NICHT als Modul geladen wird Linux / Unix basierende Systeme nutzen ein geladenes Interpretermodul Installation des XAmpp (beinhaltet) - Apache Server 2.2.14 Web-Server - MySQL 5.1.41 Datenbank-Server - PHP 5.3.1 Programmierschnittstelle ACHTUNG: eventuell wichtige Einstellungen Bitte bei der Installation des XAmpp unbedingt darauf achten, dass der eventuell bereits installierte WebServer (Apache) und der Datenbank-Server (MySQL) nicht aktiv ist. Besser ist es, die Dienste zu stoppen, zu deinstallieren und die neue Installationen entsprechend anzupassen. - Apache =>./conf/httpd.conf Listen 127.0.0.1:80 oder und (in nächster Zeile) Listen 127.0.0.1:443 <Directory> htdocs <virtueller Server> 127.0.0.1 <IfModule dir_module> DirectoryIndex eventuell index.php hinzufügen - PHP =>./php.ini y2k_compliance = On (Jahr 2000 Kompatibel auch wenn Browser es nicht unterstützen) zlib.output_compression = Off (Zip-Funktion wenn erforderlich) expose_php = On (Ja, es darf PHP auf dem Server genutzt werden) display_errors = On (Fehlermeldungen aktivieren) log_errors = Off (diese aber nicht mitschreiben) - MySql =>./bin/my.ini basedir "E:/xampp/mysql/" datadir "E:/xampp/mysql/data/" port 3306 socket "MySQL" Was ist PHP ( progr. Hypertext Preprocessor ) - PHP ist eine serverseitige, in HTML eingebettete Scriptsprache - PHP-Scripte werden auf dem Server (Srv) ausgeführt - Als Script werden Programme bezeichnet, die keine eigenständigen Programme sind - PHP-Code wird durch Srv, auf Srv ausgeführt und zur Ausgabe an Client gesandt - Es ist möglich, PHP-Scripte vollständig ohne sichtbare Ausgabe laufen zu lassen (z.b. DB s)
Wie geht das mit PHP - PHP wird einfach in den HTML-Quellcode geschrieben / eingebettet - Dateien müssen die richtige Endung (Extension) haben. (Name.php) - Damit wird dem Server gesagt, dass in dieser Datei PHP-Scripte enthalten sind. Sie sollten von vorn herein daran denken, alle Dateien klein zu schreiben und die Aufrufe aus einer anderen Datei heraus ebenfalls stets klein schreiben. - Die PHP Abschnitte in der Datei müssen entsprechend gekennzeichnet sein Beispiel 1: <? echo "Hello world!";?> 2: <?php echo "Hello world!";?> AM GELÄUFIGSTEN! 3: <script language="php"> echo "Hello world!"; </script> - Eine Befehlszeile endet immer mit einem ; - Eine Ausdruckszeile, echo Zeile wird im Quoting eingefasst und endet mit einem ; - Echo Ausgaben können über mehrere Zeilen gehen - In Echo-Ausgaben angesprochene Übergabewerte kennzeichnen \ Wert\ - HTML-Text kann mit PHP-Wert verknüpft werden; echo HTML-Text. $PHP-Wert. HTML ; Variablen haben in PHP eine besondere Bewandtnis, werden sie nicht deklariert aber trotzdem genutzt, werden diese bei der Benutzung automatisch gesetzt. Ist jedoch nicht zu empfehlen. Das stört die Übersichtlichkeit im Script. Aufbau einer Seite, die PHP Code enthält <html> <head> <title>name der Seite</title> <script language= javascript > code </script> base target = _blank </head> <body> <font face= arial size= 2 color= #ff0000 >Die roten Zeilen sind HTML Text</font> <font face= arial size= 2 color= #ff0000 >Hallo Dave, was kann ich für dich tun</font> <br> <?php echo <font face= arial size= 2 color= #000099 >Blauen Zeilen sind PHP-Text</font> ; echo <font face= arial size= 2 color= #000099 >Hallo Welt, bin wieder da!</font> ; echo <font face= arial size= 2 color= #000099 >Kenntnisse in PHP mir helfen mir schnell Geld zu verdienen, denn ich kann Webseiten und Datenbanken erstellen. </font><br><i>db s</i> liefern über Verbindung zum <b>db-server</b> Daten. So ist es möglich Webseiten mit jeder Art Inhalten zu <u>füllen</u>. ;?> </body> </html>
Struktogramme nach DIN 66 261 nach < Nassi - Shneidermann > Denn jede Programmierung sollte mit dem Erstellen eines Struktogrammes begonnen werden, der Rest braucht dann nur noch eingetippt zu werden. Zuerst einmal sonnen hier die wichtigsten Typen der Struktogramme dargestellt werden. Struktogramme können die Lesbarkeit eines zu erstellenden Programms eindeutig erleichtern, es muss aber auch gesagt werden, dass die Erarbeitung nur bei kleinen Programmen relativ leicht ist. Es gibt sechs Arten von Kontrollstrukturen. Sie dienen dazu, Abläufe zu veranschaulichen, damit diese in jede Programmiersprache umgesetzt werden können. Deshalb sollten Struktogramme keine programmiersprachenabhänige Begriffe verwenden, sondern alles mit allgemeinen Sprachbegriffen erläutern. Folgestruktur [(Sequenz)] Anweisungen sind Befehle, die einfach NUR ausgeführt werden ohne dass sie z.b. sofortige Auswertungen nach sich ziehen. Eventuell ist es besser verständlich, wenn Sie sich einen dicken senkrecht nach unten laufenden Strich vorstellen und jede Anweisung als ein von diesem dicken Strich senkrecht von ihm weglaufenden Strich ansehen. Etwa so wie die folgende Grafik zeigt: Die Folgestruktur ist gekennzeichnet durch aufeinanderfolgende Anweisungen, wobei An-
weisung für Anweisung der Reihe nach ausgeführt wird. Jede Anweisung wird genau einmal ausgeführt. Auswahlstruktur [Alternative Verzweigung] Bei einem solchem Programmteil werden Entscheidungen erwartet. z.b. Trifft etwas genau so ein wie es vom Programmierer erwartet wird, dann mache von dieser Stelle an, hier weiter. Trifft der Fall NICHT zu, dann bitte Programm, gehe den anderen Zweig weiter. Ein gutes Beispiel dafür ist die ( IF ELSE ELSEIF ) Konstruktion Bei einer Auswahlstruktur wird in Abhängigkeit von einer Bedingung eine bzw. ein Anweisungsblock (Folgestruktur) durchlaufen. Falls die Auswahl nur einseitig erfolgen soll, wird das Anweisungsfeld leer gelassen.in dem Anweisungsfeld kann jede andere Struktur vorkommen, d.h. eine Mehrfachauswahl-/ Doppelbedingung - kann durch zwei ineinander verschachtelte Auswahlstrukturen erfolgen. Fallabfrage Für diese Programmstruktur entscheidet sich ein Programmierer z.b. wenn das Programm in der Lage sein muss auf mindestens drei oder mehr Entscheidungen reagieren muss. In der Praxis hat sich gezeigt, dass bei Fallentscheidungen ab vier dieses Konstrukt zur Anwendung kommt. Der Programmierer ist durch eine Fallentscheidung in der Lage, seinem Programm schnell und übersichtlich Entscheidungen und die daraus resultierenden Wege zu ermöglichen.
Die Fallabfrage - auch Fallunterscheidung genannt - stellt eine vereinfachte Form der mehrseitigen Auswahl dar. Sie bietet sich insbesondere für die Menütechnik an. Wiederholungsstrukturen [(Iteration)] In diesem Programmteil werden dem Programmierer die Möglichkeiten seiner Programmiersprache erst so richtig aufgezeigt. Hier tummeln sich sogenannte Schleifenkonstrukte in verschiedenen Varianten rum. Zum Einen gibt es die Es braucht stets eine Abbruchbedingung! Wiederholungsstruktur, bei der die Anzahl der Durchläufe, das heißt mache so lange wie festgelegt ist. Als Bedingung muss ein Zähler angegeben und mit einem Startwert versehen werden. Stellen Sie sich vor: Ihr Programm soll genau 3 mal eine Passwortanfrage ermöglichen und nach der vierten Anfrage soll eine Meldung erscheinen, dass es jetzt reicht. (Sie haben es zu oft versucht) Dazu geben Sie einfach den Startwert $Anz=1 an. Nach jeder Eingabe zählen Sie diese $Anz um einen Wert nach oben bis $Anz=3 erreicht hat. Bei der nächsten Eingabe wird dann eine Ausgabe Auf dem Bildschirm erfolgen, dass die Versuche jetzt ausreichen und Sie beenden z.b. das Programm! Wiederholungsstruktur mit vorausgehender Bedingungsprüfung (abweisende Schleife). Vor dem erstmaligen und allen weiteren Durchläufen des Schleifenkörpers erfolgt die Bedingungsprüfung. Ist die Bedingung erfüllt, werden die Anweisungen des Schleifenkörpers ausgeführt. Wiederholungsstruktur mit nachfolgender Bedingungsprüfung (nichtabweisende Schleife). Die Anweisungen im Schleifenkörper werden so lange wiederholt, bis die Bedingung nicht mehr erfüllt ist. Im Gegensatz zur abweisenden Schleife wird der Schleifenkörper mindestens einmal durchlaufen.
Geschlossene, zählergesteuerte Schleife. Bei dieser Schleifenstruktur ist die Anzahl der Schleifen durchläufe festgelegt, und wird durch einen Zähler kontrolliert. Die Anzahl der Durchläufe kann durch den Benutzer festgelegt, oder durch das Programm gesteuert werden. Unterprogrammstrukturen Unterprogramme werden dann eingesetzt, wenn sich die darin enthaltenden Anweisungen während des Programmablaufes häufig wiederholen. Das Unterprogramm kann von mehreren Stellen aufgerufen werden, ist aber nur einmal vorhanden. Das Hauptprogramm wird dadurch übersichtlicher, die Pflege und Wartung erleichtert. Die Unterprogrammtechnik unterstützt die Prinzipien der Strukturierung, Modularisierung und Mehrfachverwendung. Erläuterungen die nicht mehr zur DIN-Norm gehören. Anweisungen Mathematische Berechnungsformeln sollten die allgemeinen mathematischen Begriffe verwenden. a = a +1 ist FALSCH - mathematisch eine Ungleichung und damit eine falsch Aussage Es sollte auch zwischen ganzzahliger und realer Division unterschieden werden. reelle Zahlen: a := a/2 ganze Zahlen: a := a div 2 Unterscheidung der Ein- und Ausgabe Durch diese Pfeile kann zwischen Aus- und Eingaben unterschieden werden, was die Lesbarkeit von Struktogrammen erleichtert.
Bei der Ein- und Ausgabe können auch mehrere Variablen angegeben werden. Ich benutze zum erstellen von Struktogrammen z.b. eine Tabellenkalkulation oder auch Microsoft Visio. Dort kann man sehr schnell Rahmen um Zellen setzen, mehrere Anweisungen (Zellen) verschieben und auch schräge Linien zeichnen. Gleichzeitig ist eine Tabellenkalkulation ein sehr schöner Taschenrechner für das Testen von Algorithmen. Mit Visio ist es sogar möglich ganze Projekte im Struktogrammen fast von selbst erstellen zu lassen