31
Universität Zürich Informatikdien ste 25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 1 Willkommen Dynamische Webseiten mit MySql und PHP

Willkommen

  • Upload
    yamal

  • View
    20

  • Download
    0

Embed Size (px)

DESCRIPTION

Willkommen. Dynamische Webseiten mit MySql und PHP. Skript und Folien zum Kurs. Skript Martin Pollakowski: Grundkurs MySQL und PHP. (Vieweg Verlag) Folien http://www.fh-gelsenkirchen.de/fb01/homepages/pollakowski/db/index.html. Inhalt. Übersicht PHP MySQL Verbindung PHP und MySQL. - PowerPoint PPT Presentation

Citation preview

Page 1: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 1

Willkommen

Dynamische Webseiten mit MySql und PHP

Page 2: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 2

Skript und Folien zum Kurs Skript

Martin Pollakowski: Grundkurs MySQL und PHP. (Vieweg Verlag)

Folien

http://www.fh-gelsenkirchen.de/fb01/homepages/pollakowski/db/index.html

Page 3: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 3

Inhalt • Übersicht

• PHP

• MySQL

• Verbindung PHP und MySQL

Page 4: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 4

Übersicht • Was sind „dynamische“ Webseiten?

• Beispiele

• Schema

• Ablauf

• Was benötige ich?

Page 5: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 5

Dynamische Webseiten Unterscheidung:

Dynamisch <> Interaktiv

Page 6: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 6

Beispiele • Telefonbuch

• Aktienkurse

• Youtube

Page 7: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 7

Schema Prinzipieller Ablauf:

1. Nutzer ruft mit Browser eine Web-Seite auf dem Apache-Server auf

2. Apache-Server übergibt Web-Seite an PHP-Server3. PHP-Server liest Daten aus MySQL-Datenbank4. PHP-Server verpackt die Daten im HTML-Format (für den

Browser)5. Apache Server übergibt die Web-Seite an den Browser6. Web-Server

Page 8: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 8

Schema

Page 9: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 9

Ablauf

Page 10: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 10

Was benötige ich? • LAMP oder WAMP (Linux/Windows, Apache, MySQL, PHP)

• Tools

– Admin Tool für MySQL z.B. OpenOffice via ODBC, PHPMyAdmin oder MySQL-eigene Werkzeuge

– HTML-Editor z.B. GoLive, Dreamweaver, HTML-Kit

– PHP-Programmierumgebung z.B. Eclipse, HTML-Kit, ZEND-Studio

Page 11: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 11

PHP • Schema

• Beispiele

Page 12: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 12

PHP Einführung in PHP

•http://www.id.uzh.ch/cl/dl/schulung/kurse/phpkurs/index.html

Page 13: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 13

Einführung PHP Beipiel einer Passwortabfrage

Page 14: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 14

MySQL-Geschichte 1979: Datenbank-Tool UNIREG der schwedischen Firma TcX

Programmierer: Michael Widenius

1994: MySQL entsteht als SQL-basierter Server für Web-Anwendungen

1996: MySQL als Binär-Distribution für Linux und Solaris frei verfügbar

inzwischen: Quell-Distribution verfügbar, Portierung auf Windows erfolgte

aber: MySQL ist kein Open-Source-Produkt

Lizenzbedingungen:

- ältere MySQL-Versionen kostenlos verfügbar und frei nutzbar- aktueller MySQL-Server bei kommerziellem Einsatz lizenzpflichtig

Quelle: Dubois, „MySQL“

Page 15: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 15

Verbreitete relationale Datenbank-Management-

Systeme MySQL kostenlos für nichtkommerzielle

Anwendungen

DB2 IBM Datenbanksystem

Oracle an weitesten verbreitet, derzeit Marktführer

INGRES entstand aus University-INGRES an der Berkley-University

dBASE Quasi-Standard im PC-Bereich*

MS-Access Microsoft-Office-Produkt*

*nicht alle Merkmale eines DBMS vorhanden, z.B.: keine Mehrbenutzer-Systeme, keine Sichten...

Page 16: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 16

Bedienung des MySQL Clients Der Client (Monitor) meldet sich mit:

Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 65149 to server version: 5.0.18-Max

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

Danach können Kommandos eingegeben werden, z.B.:

mysql> status;

Kommando wird von mysql zu mysqld geschickt und dort bearbeitet.Ergebnis wird von mysqld zu mysql geschickt und dort angezeigt.Wichtig: Semikolon nicht vergessen (schließt das Kommando ab) !

Page 17: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 17

Daten speichern und auslesen Überblick über die Kommandoabfolge:

1) Eine Datenbank anlegen create database ...2) Die Datenbank auswählen use ...3) Eine Tabelle anlegen create table ...4) Datensätze einfügen insert ...5) Datensätze auslesen select ...6) Datensätze löschen delete ...Nützliche Kommandos zur Information: show ...

z.B.: show databases zeigt alle vorhandenen Datenbanken anshow tables zeigt alle Tabellen der aktuellen Datenbank andescribe tabellen_name zeigt die Attribute der Tabelle

Page 18: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 18

Beispiel: Kontakte

Page 19: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 19

Beispiel: Kontakte mit zwei Tabellen

Primärschlüssel

Primärschlüssel

Fremdschlüssel

Page 20: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 20

Fremdschlüssel definieren Mit SQL

ALTER TABLE Adressen add FOREIGN KEY (person_id) REFERENCES person( id ) ON DELETE CASCADE ;

PHP MyAdmin• Index erzeugen

• Beziehung angeben

• On delete -> cascade

Page 21: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 21

Hilfsmittel: OpenOffice

Page 22: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 22

Darstellung der Relationen

Page 23: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 23

Query erstellen:

Page 24: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 24

Resultat:

Page 25: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 25

Query Designe, Angabe als SQL

Page 26: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 26

Die SQL-Anweisung kann direkt in PHP übernommen werden SELECT `Adressen`.`Strasse`, `Adressen`.`Ort`, `person`.`Name` FROM `phpkurs`.`Adressen`, `phpkurs`.`person` WHERE ( `Adressen`.`person_id` = `person`.`id` ) AND ( ( `person`.`Name` = 'Meier' ) )

Page 27: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 27

Die Verbindung von PHP und MySQL

http://www.id.unizh.ch/cl/dl/schulung/kurse/phpkurs/lunch/index.html

Page 28: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 28

Die Verbindung von PHP und MySQL

Verbindung zum DB-Server aufbauen

Datenbank auswählen

Anfrage: sql-query schicken

Resultat abholen

Page 29: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 29

Die Verbindung von PHP und MySQL

Page 30: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 30

Wichtige LinksBeispiele PHP-MySQL:

http://www.id.unizh.ch/cl/dl/schulung/kurse/phpkurs/lunch/index.html

Beispiele und Einführung PHP:

http://www.id.unizh.ch/cl/dl/schulung/kurse/phpkurs/index.html

Einführung und Dokus HTML:

http://de.selfhtml.org

Offizielle PHP-Seite:

http://www.php.net/

Offizielle MySQL-Seite

http://www.mysql.org/

OpenOffice

http://www.openoffice.org/

Grundkurs (Skript) MySQL und PHP

http://www.fh-gelsenkirchen.de/fb01/homepages/pollakowski/db/index.html

Page 31: Willkommen

Universität Zürich

Informatikdienste

25.10.07 dm IntroBrushUp: Dynamische Webseiten mit MySql und PHP 31

Fragen?