Seminar Scriptsprachen

Slides:



Advertisements
Ähnliche Präsentationen
Allgemeines Name: Ursprünglich: „Personal Home Page Tools“
Advertisements

der Universität Oldenburg
Imperative Programmierung
Forschungszentrum caesar
Variablen und Datentypen
10. Grundlagen imperativer Programmiersprachen
der Universität Oldenburg
der Universität Oldenburg
FH-Hof Einbindung von JavaScript Anweisungen
FH-Hof Extensible Markup Language Richard Göbel. FH-Hof Extensible Markup Language XML XML ist universeller Ansatz für die Strukturierung von Zeichenketten.
Java: Dynamische Datentypen
Indirekte Adressierung
Funktion defined Die Funktion defined testet, ob eine Variable einen anderen Wert als undef enthält. Ist der Wert undef, so wird falsch zurückgegeben,
Die Skriptsprache Lua Softwaretechnologie II.
Robotik mit LEGO Mindstorms
Dynamische Webseiten mit PHP Oder: LAMP - The open way.
Dynamische Webseiten mit PHP
Imperative Programmierung
Boolesche Ausdrücke Ist der Rückgabewert eines Ausdrucks vom Typ boolean, so wird dieser als Boolescher Ausdruck bezeichnet (nach dem Mathematiker George.
Programmieren mit JAVA
Zusammenfassung Vorwoche
Das erste Programm (Folie 16)
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
Arrays,Strings&Pointer in C/C++
DVG Klassen und Objekte
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
Einführung in die Programmierung Datensammlung
Jetzt lernen wir.
Grundkonzepte Java - Klassendefinition
SQL PHP und MySQL Referat von Katharina Stracke und Carina Berning
Einführung in die Programmiersprache C 1
Java programmieren mit JavaKara
Einführung in das Programmieren mit JavaScript Mag. Andreas Starzer weloveIT – EDV Dienstleistungen.
Informatik 1 Übung 2.
Kontrollstrukturen Verwendung: Steuerung des Ablaufs.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
PHP und MYSQL am Organisatorisches Der komplette Kurs im Schnelldurchgang Bewertung von wichtig und unwichtig Historisch Kulturwissenschaftliche.
BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 11.Sitzung WS 02/03.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Informatik 1 Letzte Übung.
Programmierung 1. Einführung Seite 1
Purga - Scriptengine Ein Einblick.
EPROG Tutorium #3 Philipp Effenberger
Einführung in PHP.
Einführung in PHP 5.
CuP - Java Sechste Vorlesung Entspricht ungefähr Kapitel 3. 1 – 3
Starten der Entwicklungsumgebung (IDE)
Datentypen: integer, char, string, boolean
Agenda für heute, 7. April, 2005 Bedingte ProgrammausführungBedingte Programmausführung Algorithmische Grundlagen Vergleichsoperatoren, Wahrheitswerte.
Programmieren in C Grundlagen C 2
BMEVIEEA100 Grundlagen der Programmierung
PHP: Operatoren und Kontrollstrukturen
se_10_regulaere_ausdruecke.ppt1 Softwareengineering Reguläre Ausdrücke (regular expressions) Prof. Dr.-Ing. Axel Benz, Berlin School of Economics.
Java Syntaxdiagramme Buchstabe A B Z a z ... Ziffer
Anführungszeichen?! echo 'Apfel$atf'; // ergibt: Apfel$aft
TypoScript.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
(Syntax, Strings/Zahlen, Variablen, Arrays)
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Programmierkurs JavaUE 4 Anweisungen und ProgrammeDietrich BolesSeite 1 Programmierkurs Java Dr. Dietrich Boles Teil Imperative Programmierung Unterrichtseinheit.
Variablen und Datentypen
Seminar Internettechnologie Prof. Dr. Lutz Wegner Julia Mikov WS 06/07
Funktionen, Felder und Parameter- übergabe. Funktionsaufruf mit Feld als Parameter: Parameter = Name des Feldes.
Die Programmiersprache Ruby Seminarvortrag von Lia Schulze Dephoff 1.
Hello World! Javakurs 2013 Arne Kappen
Unterschiedliche Kontrollstrukturen
SS 04 Christiane Rauh Christian Hellinger
Schleifen Datenfelder (Arrays) Verzweigungen
 Präsentation transkript:

Seminar Scriptsprachen PHP-Seminar Von Saleh Hajahja 3/27/2017 PHP Seminar

PHP-Seminar: Inhalt Einführung: Syntax: Web Programmierung: Was ist PHP. Dynamische Webseiten. Historisches. Was macht PHP populär? Syntax: Datentypen, Variablen. Operatoren. Kontroll-Konstrukte: (if-elseif-else, while, for, foreach). Funktionen. Arrays. String. Reguläre Ausdrücke. Web Programmierung: Web Form Handling. PHP und MySQL. 3/27/2017 PHP Seminar

PHP und dynamische Webseiten PHP ist eine serverseitige Scriptsprache für die Erstellung von dynamischen Webseiten. Es gibt viele Technologien zur Erstellung von dynamischen Webseiten, die häufigsten sind ASP.NET (Active Server Pages, von Microsoft), JP (Java Server Pages), ColdFusion, Ruby on Rails, und PHP. 3/27/2017 PHP Seminar

dynamische Webseiten 3/27/2017 PHP Seminar

Historisches PHP wurde 1995 von Rasmus Lerdorf für personliche Zwecke entwickelt. Ursprünglich stand PHP/FI für „Personal Home Page/Form Interpreter“ . Im Jahr 1998 wurde Version 3.0 von Zeev Suraski und Andi Gutmans ausgegeben. Seitdem die Bedeutung von PHP steht für Hypertext Preprocessor. Im Jahr 2000 gründeten sie die Firma Zend Technologies Ltd., Der Kern des Interpreters wurde wieder komplett umprogrammiert und unter dem Namen Zend Engine I „PHP 4.0“ ausgegeben. Im Jahr 2004 wurde Zend Engine II „PHP 5.0“ausgegeben. 3/27/2017 PHP Seminar

Was macht PHP populär? PHP ist schnell. PHP ist kostenlos. PHP ist einfach zu benutzen. PHP ist portabel. Technische Unterstützung steht allgemein zur Verfügung: Sehr gut mit verschiedenen Sprachen dokumentiert. Viele kostenlose Bibliotheken und bereitgestellten Quellcode auf dem Netz Kostenlose Design Templates (Smarty, PHP Savant, PHPlib, Yats,…). PHP ist sicher. 3/27/2017 PHP Seminar

Quelldateien und PHP-Tags Es gibt vier Arten von Tags: 3/27/2017 PHP Seminar

Kommentare Es gibt vier Arten von Kommentaren: // Single line comment /* Multi-line Comment */ /** * API Documentation Example * * @param string $bar */ function foo($bar) { } 3/27/2017 PHP Seminar

Datentypen Scalar: boolean: Ein Wert, der entweder true oder false sein kann. int: Zeichenbehafteter numerischer Integer-Wert. float: Zeichenbehafteter Fließkomma-Wert. string: Sammlung „Collection“ von Binärdaten. Composite: Arrays sind Container von geordneten Daten-Elemente. Objekte. Besondere Datentypen: NULL. ressource. Umwandlung zwischen Datentypen „casting“: PHP kümmert sich um Umwandlung zwischen Datentypen. Beispiel: $x = 10.88; echo (int) $x; / / Ausgabe 10 3/27/2017 PHP Seminar

Variablen Eine Variable kann jede Typ von Daten annehmen. PHP-Variablen sind durch ein Dollarzeichen $ identifiziert, gefolgt von einer Namen. Variablennamen dürfen nur Buchstaben (a-z, A-Z), Ziffern (0-9) und den Unterstrich enthalten, und müssen entweder mit einem Buchstaben oder einem Unterstrich anfangen. PHP ist case-sensitive. isset ($varName). 3/27/2017 PHP Seminar

Operatoren Zuweisungs-Operatoren: „=“: $a = ($b = 4) + 5; Arithmetische Operatoren für die Durchführung mathematischer Funktionen: (-, +, -, *, /, %, +=, -=, *=, /=, %=). String-Operatoren für die Verkettung von zwei oder mehr Strings: („.“, „.=“), Beispiele aus www.php.net: $a = "Hallo "; $b = $a . "Welt!"; $a = "Hallo "; $a .= "Welt!"; 3/27/2017 PHP Seminar

Operatoren Vergleich-Operatoren für den Vergleich von zwei Daten: Quelle: www.php.net 3/27/2017 PHP Seminar

Operatoren Logische Operatoren für die Durchführung von logischen Operationen in Boolesche Werte: Quelle: www.php.net 3/27/2017 PHP Seminar

Operatoren Bit-Operatoren für die bitweise Manipulation von Daten: Quelle: www.php.net 3/27/2017 PHP Seminar

Kontrollkonstukte if else Konstrukt: //Anweisungen if (expression1) { //Anweisungen } elseif (expression2) { // statt elseif kann auch “else if” getrennt geschrieben warden. } else { } PHP bietet auch der ternäre Operator (? :): echo 10 == $x ? ’Yes’ : ’No’; $tablewidth = (isset($width)) ? $width : 100; 3/27/2017 PHP Seminar

Kontrollkonstukte switch-Konstrukt: switch ($a) { // $a wird als Ausdrück bewertet case true: // Anweisungen break; case 0: default: } Die iterativen Konstrukte (while, do-while, for): identisch wie bei C. break, continue Konstrukte: identisch wie bei C-Sprache. Es gibt weitere Kontrollkonstukte : siehe PHP-Dokumentation. PHP bietet alternative Syntax für manche Kontrollkonstukte. 3/27/2017 PHP Seminar

Funktionen function name() { } Die Deklaration einer neuen Funktion fängt mit dem Schlüsselwort function an, gefolgt von einem Bezeichner „Funktionsname“, und dann ein Paar Klammern () dann zwei geschweiften Klammern {}: function name() { } Die Regeln für Variablennamen gelten auch für die Funktionen. Die Funktionsnamen sind nicht case-sensitive. Beispiel für Funktionsdeklaration und Funktionsaufruf: function hello() { echo "Hello World!"; } hello(); // Displays "Hello World!„ Mit return kann eine Funktion einen Wert zurückliefern. 3/27/2017 PHP Seminar

Funktionen Parameterübergabe: Eine Funktion kann mit mehr aktuellen Parameter als ihre formale Parameter aufgerufen werden. Optionale Parameter sind erlaubt, sie werden so deklariert, indem ihnen default-Werte zugewiesen werden. Optionale Parameter.   function hello($greeting, $who = "World") { echo "$greeting $who"; } hello(“Hello“); // Displays “Hello World” 3/27/2017 PHP Seminar

Arrays durch die explizite Aufruf der array () Konstruktor PHP-Arrays sind geordnete Sammlungen „Collections“ von Elementen, jedes Element hat einen Wert und wird durch einen Schlüssel identifiziert. numerische Schlüssel „automatisch erhöht“, alphanumerische Schlüssel oder Mischung von beiden. Speicherung jedes Werts beliebiges Typs, einschließlich anderen Arrays. mehr als siebzig vorhandene Funktionen zum Manipulieren von Arrays. Es gibt zwei Methoden zur Erzeugung eines Arrays: durch die explizite Aufruf der array () Konstruktor $a = array (10, 20, 30); $a = array (’a’ => 10, ’b’ => 20, ’cee’ => 30); $a = array (5 => 1, 3 => 2, 1 => 3,); $a = array(); 3/27/2017 PHP Seminar

Arrays Die zweite Methode ist durch den Arrays Operator []: $x[] = 10; $x[’aa’] = 12; echo $x[0]; // Outputs 10 echo $x[1]; // Outputs 11 echo $x[“aa“]; // Outputs 12 Enumerative Arrays vs. assoziative Arrays: In der Literatur werden die Arrays grob in zwei Kategorien unterteilt, enumerative und assoziative: Enumerative Arrays. Assoziative Arrays (manchmal auch als Dictionaries genannt) erlauben die Assoziation (beliebiger Schlüssel => beliebiges Element). 3/27/2017 PHP Seminar

Operationen auf Arrays Arrays Iterieren: $array = array(’foo’, ’bar’, ’baz’); foreach ($array as $key => $value) { echo "$key: $value". "<br>"; } Ausgabe: 0: foo 1: bar 2: baz 3/27/2017 PHP Seminar

Operationen auf Arrays Arrays sortieren: sort(): $array = array(’a’ => ’foo’, ’b’ => ’bar’, ’c’ => ’baz’); sort($array); var_dump($array); Die Ausgabe: array(3) { [0]=> string(3) "bar" [1]=> string(3) "baz" [2]=> string(3) "foo" }  asort(): ähnlich wie sort(), sie erhält aber die Assoziation (Schlüssel=>Wert): rsort(): ähnlich wie sort() aber absteigend. arsort(): ähnlich wie asort() aber absteigend. ksort(): sortiert das Array aufsteigend nach Schlüssel. krsort(): sortiert das Array absteigend nach Schlüssel. 3/27/2017 PHP Seminar

Strings Mit einfachem Anführungszeichen: sogegannte einfache Strings, dabei werden Escape–Sequenzen nicht ausgewertet (geparst), mit der Ausnahme das einfache Anführungszeichen selber (\‘), dieses wird ausgewertet (geparst). echo '$a + $b = '.($a+$b).”<br>”; echo 'erste Zeile\nimmernoch die erste Zeile'; Ausgabe: $a + $b = 30 erste Zeile\nimmernoch die erste Zeile   Mit doppeltem Anführungszeichen: sogenannte komplexe Strings, dabei werden alle Escape-Sequenzen ausgewertet (geparst). echo "$a + $b = ".($a+$b).”<br>”; echo "erste Zeile\nzweite Zeile"; 10 + 20 = 30 erste Zeile zweite Zeile 3/27/2017 PHP Seminar

Operationen auf Strings strlen(): Länge des Strings in Bytes bestimmt, alle Zeichen unabhängig von ihren Werten gezählt. strtr(): String-Transforming: echo strstr (’abc’, ’a’, ’1’); // Ausgabe: 1bc strcmp(): und strcasecmp(): Stringvergleich, identisch außer, die erste ist case-sensitive, die zweite nicht-case-sensitive. strpos(): gesucht die Position des ersten Vorkommen eines Strings. 3/27/2017 PHP Seminar

Reguläre Ausdrücke return preg_match( Die Funktion preg_match(): Syntax: int preg_match (string pattern, string subject [, array matches]); pattern: enthält das Pattern. Subject: enthält die Zeichenkette, auf die das Pattern angewandt werden soll. Der Rückgabewert dieser Funktion ist 1, wenn das Pattern gefunden wurde, ansonsten 0. Ist der Parameter "matches" angegeben, so wird dieser mit Backreferences gefüllt. Lösung der Beispielcode: function validate_email($address) { return preg_match( "/(^[\.a-z0-9_-]{1,64}@(((([a-z0-9])|([a-z0-9][a-z0-9-]{0,61}[a-z0-9]))\.)+)(de)$)/i" ,$address ,$matches) && (strlen($matches[2])<=256); } 3/27/2017 PHP Seminar

Web Programmierung In der Datei form.php In der Datei submitData.php Beispiel: Get-Methode: In der Datei form.php <form action="submitData.php" method="get" name="f1"> <p>Name: <input name="name" type="text" /></p> <p>Vorname: <input name="vorname" type="text" /></p>  <p><input type="submit" /></p> </form> In der Datei submitData.php <?php // If we had a GET element called 'city', then echo it: if (isset($_GET['name'])) { echo "<p>Dein Name ist: {$_GET['name']}</p>\n"; echo "<p>Dein Vorname ist: {$_GET['vorname']}</p>\n"; } ?> 3/27/2017 PHP Seminar

Web Programmierung Beispiel: Mit Post-Methode: Analog. Über URL: In der Datei Link.php: <body> <?php $name = "Bob"; ?> Übertage meinen Namen: <a href="LinkData.php?meinName=<?php echo $name;?>"> Link </a> </body> In der Datei LinkData.php: echo "Dein Name ist: ".$_REQUEST['meinName']."<br>"; 3/27/2017 PHP Seminar

PHP und MySQL: Beispiel: Gästebuch Form für die Daten erstellen: 3/27/2017 PHP Seminar

PHP und MySQL: Beispiel: Gästebuch Daten in MySQL-Datenbank speichern: if(mysql_connect("localhost", "root", "111")){ if(mysql_select_db("gaestebuch")){   $query = "INSERT INTO eintraege ". "(Datum, Autor, Email, Titel, Text) ". "VALUES (". "\"".date("d/m/y")."\"".", \"". $_REQUEST["fAutor"]."\", \"". $_REQUEST["fEmail"]."\", \"". $_REQUEST["fTitel"]."\", \"". $_REQUEST["fText"] ."\");"; if(mysql_query($query)){ //data have been successfully saved! return true; }else{ show_alert("data Could not be saved!"); return false; } show_alert("Could not select database!"); show_alert("Could not connect to database Sever!"); 3/27/2017 PHP Seminar

PHP und MySQL: Beispiel: Gästebuch Daten aus MySQL-Datenbank abfragen. Mit der Datenbank verbinden: wie oben. Abfrage erstellen: $query = "SELECT * FROM eintraege"; Abfrage ausfrühren: $result = (mysql_query($query)); Eine Zeile einlesen: $row = mysql_fetch_array($result); Auf einzelne Attribute zugreifen: $row["Datum"], $row["Autor"], … 3/27/2017 PHP Seminar

PHP und MySQL: Beispiel: Gästebuch Daten auf die Seite anzeigen. 3/27/2017 PHP Seminar

Quellen php|architect’s Zend PHP 5 Certification Study Guide by Davey Shafik with Ben Ramsey, First Edition: October 2006. php|architect’s Guide to Programming with Zend Framework by Cal Evans, First Edition: January 2008. Learning PHP 5, By David Sklar, June 2004. PHP 5 in Practice, By Elliot White III, Jonathan Eisenhamer, July 11, 2006. PHP 5 FOR DUMMIES, by Janet Valade, 2004. Verschiedene Webseiten auf dem Internet. 3/27/2017 PHP Seminar

Danke! Fragen? 3/27/2017 PHP Seminar