Grundlagen der Kommandozeile unter Unix/Linux (Handout)
Webentwicklung mit PHP und MySQL
1. Erste Schritte
Grundbegriffe des Web
PHP Programmierung
MySQL Datenbanken
Website mit DB-Anbindung
Webentwicklung mit PHP und MySQL
Dr. Kerstin Puschke
Workshop, Uni Salzburg
September 2012
K. Puschke phpMySQL
2. Erste Schritte
Grundbegriffe des Web
PHP Programmierung
MySQL Datenbanken
Website mit DB-Anbindung
Lizenz
Lizenz
Dieser Text steht unter einer Creative Commons
Attribution-Share Alike 3.0 Germany Lizenz, siehe
http://creativecommons.org/licenses/by-sa/3.0/de/
K. Puschke phpMySQL
3. Erste Schritte
Grundbegriffe des Web
PHP Programmierung
MySQL Datenbanken
Website mit DB-Anbindung
Hinweis
Materialien
Codebeispiele und Übungsaufgaben mit Erläuterungen und
links im Wiki!
K. Puschke phpMySQL
4. Erste Schritte
Grundbegriffe des Web
PHP Programmierung
MySQL Datenbanken
Website mit DB-Anbindung
Outline
1 Erste Schritte
2 Grundbegriffe des Web
3 PHP Programmierung
4 MySQL Datenbanken
5 Website mit Datenbankanbindung
K. Puschke phpMySQL
5. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Outline
1 Erste Schritte
Mit PHP-Dateien arbeiten
PHP
2 Grundbegriffe des Web
3 PHP Programmierung
4 MySQL Datenbanken
5 Website mit Datenbankanbindung
K. Puschke phpMySQL
6. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
PHP-Beispiel
.php-Datei
<body>
<h1>Hallo</h1>
<p>
<?php
echo "Hallo, Welt!";
?>
</p>
</body>
K. Puschke phpMySQL
7. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
PHP-Beispiel
Ausgeliefertes HTML
<body>
<h1>Hallo</h1>
<p>Hallo, Welt!</p>
</body>
K. Puschke phpMySQL
8. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Allgemeine Syntax
jeder Block PHP-Code eingeschlossen in <?php ... ?>
oder <? ... ?>
K. Puschke phpMySQL
9. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Allgemeine Syntax
jeder Block PHP-Code eingeschlossen in <?php ... ?>
oder <? ... ?>
kann aus mehreren Zeilen Code bestehen
<?
echo "Hallo, <b>Welt</b>!";
echo "Na, wie geht’s?";
?>
K. Puschke phpMySQL
10. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Allgemeine Syntax
jeder Block PHP-Code eingeschlossen in <?php ... ?>
oder <? ... ?>
kann aus mehreren Zeilen Code bestehen
<?
echo "Hallo, <b>Welt</b>!";
echo "Na, wie geht’s?";
?>
jede Zeile Code endet mit einem ;
K. Puschke phpMySQL
11. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Allgemeine Syntax
jeder Block PHP-Code eingeschlossen in <?php ... ?>
oder <? ... ?>
kann aus mehreren Zeilen Code bestehen
<?
echo "Hallo, <b>Welt</b>!";
echo "Na, wie geht’s?";
?>
jede Zeile Code endet mit einem ;
Leerzeilen und Einrückungen werden nicht beachtet
K. Puschke phpMySQL
12. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Allgemeine Syntax
jeder Block PHP-Code eingeschlossen in <?php ... ?>
oder <? ... ?>
kann aus mehreren Zeilen Code bestehen
<?
echo "Hallo, <b>Welt</b>!";
echo "Na, wie geht’s?";
?>
jede Zeile Code endet mit einem ;
Leerzeilen und Einrückungen werden nicht beachtet
Groß- und Kleinschreibung relevant
K. Puschke phpMySQL
13. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Kommentare
Kommentare werden nicht ausgeführt
K. Puschke phpMySQL
14. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Kommentare
Kommentare werden nicht ausgeführt
dienen zur Erläuterung des Programms oder helfen beim
Debuggen
K. Puschke phpMySQL
15. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Kommentare
Kommentare werden nicht ausgeführt
dienen zur Erläuterung des Programms oder helfen beim
Debuggen
# oder // kommentieren den Rest der Zeile aus
echo “Hallo, Welt”; # Erklärung
K. Puschke phpMySQL
16. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Kommentare
Kommentare werden nicht ausgeführt
dienen zur Erläuterung des Programms oder helfen beim
Debuggen
# oder // kommentieren den Rest der Zeile aus
echo “Hallo, Welt”; # Erklärung
Blockkommentare mit /* ...*/
K. Puschke phpMySQL
17. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Kommentare
Kommentare werden nicht ausgeführt
dienen zur Erläuterung des Programms oder helfen beim
Debuggen
# oder // kommentieren den Rest der Zeile aus
echo “Hallo, Welt”; # Erklärung
Blockkommentare mit /* ...*/
Vorsicht: PHP ignoriert PHP-Kommentare, HTML ignoriert
HTML-Kommentare
K. Puschke phpMySQL
18. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Formatierung
Good Practice
Guter Code ist nicht nur maschinen-, sondern auch
menschenlesbar!
K. Puschke phpMySQL
19. Erste Schritte
Grundbegriffe des Web
Mit PHP-Dateien arbeiten
PHP Programmierung
PHP
MySQL Datenbanken
Website mit DB-Anbindung
Formatierung
Good Practice
Guter Code ist nicht nur maschinen-, sondern auch
menschenlesbar!
aussgekräftige Kommentare
K. Puschke phpMySQL
20. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Outline
1 Erste Schritte
2 Grundbegriffe des Web
Begriffsklärung
Statische Webseiten
Dynamische Webseiten
3 PHP Programmierung
4 MySQL Datenbanken
5 Website mit Datenbankanbindung
K. Puschke phpMySQL
21. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Grundbegriffe
WWW : World Wide Web - ein Netzwerk verlinkter
Dokumente (Webseiten), nutzbar via Internet
K. Puschke phpMySQL
22. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Grundbegriffe
WWW : World Wide Web - ein Netzwerk verlinkter
Dokumente (Webseiten), nutzbar via Internet
HTTP: Hypertext Transfer Protocol - ein Protokoll zum
Transport von Inhalten über das WWW
K. Puschke phpMySQL
23. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Grundbegriffe
WWW : World Wide Web - ein Netzwerk verlinkter
Dokumente (Webseiten), nutzbar via Internet
HTTP: Hypertext Transfer Protocol - ein Protokoll zum
Transport von Inhalten über das WWW
HTML: Hypertext Markup Language - eine
Auszeichnungssprache für Webseiten
K. Puschke phpMySQL
24. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Grundbegriffe
WWW : World Wide Web - ein Netzwerk verlinkter
Dokumente (Webseiten), nutzbar via Internet
HTTP: Hypertext Transfer Protocol - ein Protokoll zum
Transport von Inhalten über das WWW
HTML: Hypertext Markup Language - eine
Auszeichnungssprache für Webseiten
PHP: PHP Hypertext Preprocessor - eine
Programmiersprache
K. Puschke phpMySQL
25. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Grundbegriffe
WWW : World Wide Web - ein Netzwerk verlinkter
Dokumente (Webseiten), nutzbar via Internet
HTTP: Hypertext Transfer Protocol - ein Protokoll zum
Transport von Inhalten über das WWW
HTML: Hypertext Markup Language - eine
Auszeichnungssprache für Webseiten
PHP: PHP Hypertext Preprocessor - eine
Programmiersprache
MySQL: ein Datenbanksystem
K. Puschke phpMySQL
26. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Client und Server
Client
K. Puschke phpMySQL
27. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Client und Server
Client
Software, die Inhalte anfordert und verarbeitet
K. Puschke phpMySQL
28. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Client und Server
Client
Software, die Inhalte anfordert und verarbeitet
i.d.R. ein Webbrowser (Firefox, Internet Explorer,. . . )
K. Puschke phpMySQL
29. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Client und Server
Client
Software, die Inhalte anfordert und verarbeitet
i.d.R. ein Webbrowser (Firefox, Internet Explorer,. . . )
Webserver
K. Puschke phpMySQL
30. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Client und Server
Client
Software, die Inhalte anfordert und verarbeitet
i.d.R. ein Webbrowser (Firefox, Internet Explorer,. . . )
Webserver
Software, die Webdienste anbietet
d.h. Inhalte (z.B. Webseiten) per HTTP an Client ausliefert
K. Puschke phpMySQL
31. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Client und Server
Client
Software, die Inhalte anfordert und verarbeitet
i.d.R. ein Webbrowser (Firefox, Internet Explorer,. . . )
Webserver
Software, die Webdienste anbietet
d.h. Inhalte (z.B. Webseiten) per HTTP an Client ausliefert
z.B. Apache Webserver,. . .
K. Puschke phpMySQL
32. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Client und Server
Client
Software, die Inhalte anfordert und verarbeitet
i.d.R. ein Webbrowser (Firefox, Internet Explorer,. . . )
Webserver
Software, die Webdienste anbietet
d.h. Inhalte (z.B. Webseiten) per HTTP an Client ausliefert
z.B. Apache Webserver,. . .
Datenbankserver
K. Puschke phpMySQL
33. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Client und Server
Client
Software, die Inhalte anfordert und verarbeitet
i.d.R. ein Webbrowser (Firefox, Internet Explorer,. . . )
Webserver
Software, die Webdienste anbietet
d.h. Inhalte (z.B. Webseiten) per HTTP an Client ausliefert
z.B. Apache Webserver,. . .
Datenbankserver
Software, die Datenbankdienste (ein Datenbanksystem)
anbietet
K. Puschke phpMySQL
34. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Client und Server
Client
Software, die Inhalte anfordert und verarbeitet
i.d.R. ein Webbrowser (Firefox, Internet Explorer,. . . )
Webserver
Software, die Webdienste anbietet
d.h. Inhalte (z.B. Webseiten) per HTTP an Client ausliefert
z.B. Apache Webserver,. . .
Datenbankserver
Software, die Datenbankdienste (ein Datenbanksystem)
anbietet
manchmal auch gemeint:
der Rechner, auf dem die jeweilige Software läuft
K. Puschke phpMySQL
35. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Statische Webseiten
Inhalte liegen als HTML-Dateien bereits fertig auf dem
Server vor
K. Puschke phpMySQL
36. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Statische Webseiten
Inhalte liegen als HTML-Dateien bereits fertig auf dem
Server vor
jeder Client bekommt jederzeit dieselben Inhalte
ausgeliefert
K. Puschke phpMySQL
37. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Statische Webseiten
Ablauf
Client (Browser) fordert (per HTTP) Webseite an
K. Puschke phpMySQL
38. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Statische Webseiten
Ablauf
Client (Browser) fordert (per HTTP) Webseite an
Webserver erhält Anfrage
K. Puschke phpMySQL
39. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Statische Webseiten
Ablauf
Client (Browser) fordert (per HTTP) Webseite an
Webserver erhält Anfrage
Webserver findet HTML-Datei
K. Puschke phpMySQL
40. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Statische Webseiten
Ablauf
Client (Browser) fordert (per HTTP) Webseite an
Webserver erhält Anfrage
Webserver findet HTML-Datei
Webserver liefert HTML (per HTTP) an Client aus
K. Puschke phpMySQL
41. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Statische Webseiten
Ablauf
Client (Browser) fordert (per HTTP) Webseite an
Webserver erhält Anfrage
Webserver findet HTML-Datei
Webserver liefert HTML (per HTTP) an Client aus
Client verarbeitet HTML,
Browser stellt Webseite dar
K. Puschke phpMySQL
42. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite
Inhalte werden dynamisch ermittelt
K. Puschke phpMySQL
43. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite
Inhalte werden dynamisch ermittelt
clientseitig im Browser (javascript)
K. Puschke phpMySQL
44. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite
Inhalte werden dynamisch ermittelt
clientseitig im Browser (javascript)
serverseitig (php, ruby, perl,. . . )
K. Puschke phpMySQL
45. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite mit PHP
Ablauf
Client (Browser) fordert Webseite an
K. Puschke phpMySQL
46. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite mit PHP
Ablauf
Client (Browser) fordert Webseite an
Webserver findet PHP-Datei
K. Puschke phpMySQL
47. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite mit PHP
Ablauf
Client (Browser) fordert Webseite an
Webserver findet PHP-Datei
PHP-Code
K. Puschke phpMySQL
48. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite mit PHP
Ablauf
Client (Browser) fordert Webseite an
Webserver findet PHP-Datei
PHP-Code
wird ausgeführt
K. Puschke phpMySQL
49. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite mit PHP
Ablauf
Client (Browser) fordert Webseite an
Webserver findet PHP-Datei
PHP-Code
wird ausgeführt
interagiert ggf. mit Datenbanksystem
K. Puschke phpMySQL
50. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite mit PHP
Ablauf
Client (Browser) fordert Webseite an
Webserver findet PHP-Datei
PHP-Code
wird ausgeführt
interagiert ggf. mit Datenbanksystem
erzeugt ggf. HTML
K. Puschke phpMySQL
51. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite mit PHP
Ablauf
Client (Browser) fordert Webseite an
Webserver findet PHP-Datei
PHP-Code
wird ausgeführt
interagiert ggf. mit Datenbanksystem
erzeugt ggf. HTML
Webserver liefert HTML an Client aus
K. Puschke phpMySQL
52. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Dynamische Webseite mit PHP
Ablauf
Client (Browser) fordert Webseite an
Webserver findet PHP-Datei
PHP-Code
wird ausgeführt
interagiert ggf. mit Datenbanksystem
erzeugt ggf. HTML
Webserver liefert HTML an Client aus
Client verarbeitet HTML
Browser stellt Webseite dar
K. Puschke phpMySQL
53. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Architektur
Drei-Schichten-Architektur
Datenbanksystem
K. Puschke phpMySQL
54. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Architektur
Drei-Schichten-Architektur
Datenbanksystem
Datenspeicherung und Datenverwaltung
K. Puschke phpMySQL
55. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Architektur
Drei-Schichten-Architektur
Datenbanksystem
Datenspeicherung und Datenverwaltung
Webserver
K. Puschke phpMySQL
56. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Architektur
Drei-Schichten-Architektur
Datenbanksystem
Datenspeicherung und Datenverwaltung
Webserver
Anwendungslogik und Darstellung
K. Puschke phpMySQL
57. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Architektur
Drei-Schichten-Architektur
Datenbanksystem
Datenspeicherung und Datenverwaltung
Webserver
Anwendungslogik und Darstellung
Client (Browser)
K. Puschke phpMySQL
58. Erste Schritte
Grundbegriffe des Web Begriffsklärung
PHP Programmierung Statische Webseiten
MySQL Datenbanken Dynamische Webseiten
Website mit DB-Anbindung
Architektur
Drei-Schichten-Architektur
Datenbanksystem
Datenspeicherung und Datenverwaltung
Webserver
Anwendungslogik und Darstellung
Client (Browser)
Anfragen stellen, Anworten verarbeiten
K. Puschke phpMySQL
59. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Outline
1 Erste Schritte
2 Grundbegriffe des Web
3 PHP Programmierung
Skalare Daten
Ablaufsteuerung
Userinput verarbeiten
4 MySQL Datenbanken
5 Website mit Datenbankanbindung
K. Puschke phpMySQL
60. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalare Datentypen
integer
ganze Zahl, z.B. 42
K. Puschke phpMySQL
61. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalare Datentypen
integer
ganze Zahl, z.B. 42
float
reelle Zahl, z.B. 3.14
K. Puschke phpMySQL
62. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalare Datentypen
integer
ganze Zahl, z.B. 42
float
reelle Zahl, z.B. 3.14
string
Zeichenkette, z.B. “Hallo, Welt!” oder “7”
K. Puschke phpMySQL
63. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalare Datentypen
integer
ganze Zahl, z.B. 42
float
reelle Zahl, z.B. 3.14
string
Zeichenkette, z.B. “Hallo, Welt!” oder “7”
boolean
true oder false
K. Puschke phpMySQL
64. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalare Datentypen
integer
ganze Zahl, z.B. 42
float
reelle Zahl, z.B. 3.14
string
Zeichenkette, z.B. “Hallo, Welt!” oder “7”
boolean
true oder false
php konvertiert ggf. automatisch
K. Puschke phpMySQL
65. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalarvariablen
Variablennamen beginnen mit $:
$username, $NachName, $Telefon2,...
K. Puschke phpMySQL
66. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalarvariablen
Variablennamen beginnen mit $:
$username, $NachName, $Telefon2,...
keine explizite Initialisierung oder Deklaration nötig
K. Puschke phpMySQL
67. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalarvariablen
Variablennamen beginnen mit $:
$username, $NachName, $Telefon2,...
keine explizite Initialisierung oder Deklaration nötig
Zuweisungsoperator =
K. Puschke phpMySQL
68. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalarvariablen
Variablennamen beginnen mit $:
$username, $NachName, $Telefon2,...
keine explizite Initialisierung oder Deklaration nötig
Zuweisungsoperator =
$username = “alice”;
K. Puschke phpMySQL
69. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalarvariablen
Variablennamen beginnen mit $:
$username, $NachName, $Telefon2,...
keine explizite Initialisierung oder Deklaration nötig
Zuweisungsoperator =
$username = “alice”;
$begruessung = “Hallo, $username!”;
K. Puschke phpMySQL
70. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Skalarvariablen
Variablennamen beginnen mit $:
$username, $NachName, $Telefon2,...
keine explizite Initialisierung oder Deklaration nötig
Zuweisungsoperator =
$username = “alice”;
$begruessung = “Hallo, $username!”;
$begruessung = “$begruessung Herzlich
Willkommen!”;
K. Puschke phpMySQL
71. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Variablen
Good Practice
Guter Code ist nicht nur maschinen-, sondern auch
menschenlesbar!
K. Puschke phpMySQL
72. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Variablen
Good Practice
Guter Code ist nicht nur maschinen-, sondern auch
menschenlesbar!
aussagekräftige Variablennamen wählen
K. Puschke phpMySQL
73. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Ablaufsteuerung
Good Practice
In längeren if...elseif...-Konstrukten einen else-Zweig
vorsehen!
K. Puschke phpMySQL
74. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Ablaufsteuerung
Good Practice
In längeren if...elseif...-Konstrukten einen else-Zweig
vorsehen!
Abfangen unvorhergesehener Ereignisse
K. Puschke phpMySQL
75. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Ablaufsteuerung
Good Practice
In längeren if...elseif...-Konstrukten einen else-Zweig
vorsehen!
Abfangen unvorhergesehener Ereignisse
ggf. sogar Programmabbruch mit Fehlermeldung
K. Puschke phpMySQL
76. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formatierung
Good Practice
Guter Code ist nicht nur maschinen-, sondern auch
menschenlesbar!
K. Puschke phpMySQL
77. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formatierung
Good Practice
Guter Code ist nicht nur maschinen-, sondern auch
menschenlesbar!
Einrückungen
K. Puschke phpMySQL
78. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formatierung
Good Practice
Guter Code ist nicht nur maschinen-, sondern auch
menschenlesbar!
Einrückungen
Leerzeilen
K. Puschke phpMySQL
79. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formatierung
Good Practice
Guter Code ist nicht nur maschinen-, sondern auch
menschenlesbar!
Einrückungen
Leerzeilen
Zeilenumbrüche
K. Puschke phpMySQL
80. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formatierung
Good Practice
Guter Code ist nicht nur maschinen-, sondern auch
menschenlesbar!
Einrückungen
Leerzeilen
Zeilenumbrüche
Klammern verwenden in langen, komplexen Ausdrücken
K. Puschke phpMySQL
81. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formulare
GET und POST
Methode GET oder POST wählen (default GET)
<form action=”hallo.php” method=”post”>
K. Puschke phpMySQL
82. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formulare
GET und POST
Methode GET oder POST wählen (default GET)
<form action=”hallo.php” method=”post”>
GET „hängt Daten an URL dran “
K. Puschke phpMySQL
83. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formulare
GET und POST
Methode GET oder POST wählen (default GET)
<form action=”hallo.php” method=”post”>
GET „hängt Daten an URL dran “
URL incl. Parameter kann direkt im Browser aufgerufen und
einfach geändert werden (bookmarks, history)
K. Puschke phpMySQL
84. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formulare
GET und POST
Methode GET oder POST wählen (default GET)
<form action=”hallo.php” method=”post”>
GET „hängt Daten an URL dran “
URL incl. Parameter kann direkt im Browser aufgerufen und
einfach geändert werden (bookmarks, history)
GET und POST sind unverschlüsselt und user können
beliebige Daten senden
K. Puschke phpMySQL
85. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formulare
GET und POST
Methode GET oder POST wählen (default GET)
<form action=”hallo.php” method=”post”>
GET „hängt Daten an URL dran “
URL incl. Parameter kann direkt im Browser aufgerufen und
einfach geändert werden (bookmarks, history)
GET und POST sind unverschlüsselt und user können
beliebige Daten senden
Faustregel:
K. Puschke phpMySQL
86. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formulare
GET und POST
Methode GET oder POST wählen (default GET)
<form action=”hallo.php” method=”post”>
GET „hängt Daten an URL dran “
URL incl. Parameter kann direkt im Browser aufgerufen und
einfach geändert werden (bookmarks, history)
GET und POST sind unverschlüsselt und user können
beliebige Daten senden
Faustregel:
Daten dienen nur der Ablaufsteuerung (z.B. Anzeige
bestimmter Produktkategorie): GET
K. Puschke phpMySQL
87. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Formulare
GET und POST
Methode GET oder POST wählen (default GET)
<form action=”hallo.php” method=”post”>
GET „hängt Daten an URL dran “
URL incl. Parameter kann direkt im Browser aufgerufen und
einfach geändert werden (bookmarks, history)
GET und POST sind unverschlüsselt und user können
beliebige Daten senden
Faustregel:
Daten dienen nur der Ablaufsteuerung (z.B. Anzeige
bestimmter Produktkategorie): GET
Daten weitergehend benötigt (z.B. Bestellung in Datenbank
schreiben): POST
K. Puschke phpMySQL
88. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
XSS
Cross-Site Scripting
verbreitete Sicherheitslücke
K. Puschke phpMySQL
89. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
XSS
Cross-Site Scripting
verbreitete Sicherheitslücke
Opfer auf präparierte links locken:
example.com?name=<script>boeses_java_script</script>
K. Puschke phpMySQL
90. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
XSS
Cross-Site Scripting
verbreitete Sicherheitslücke
Opfer auf präparierte links locken:
example.com?name=<script>boeses_java_script</script>
persistentes XSS: Schadcode in die Datenbank schreiben
K. Puschke phpMySQL
91. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Userinput
WARNING
ALL Input is EVIL!
K. Puschke phpMySQL
92. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Userinput
WARNING
ALL Input is EVIL!
user geben unabsichtlich Unerwartetes ein
K. Puschke phpMySQL
93. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Userinput
WARNING
ALL Input is EVIL!
user geben unabsichtlich Unerwartetes ein
user geben absichtlich Unerwünschtes ein
K. Puschke phpMySQL
94. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Userinput
WARNING
ALL Input is EVIL!
user geben unabsichtlich Unerwartetes ein
user geben absichtlich Unerwünschtes ein
Eingaben können sehr großen Schaden anrichten
K. Puschke phpMySQL
95. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Userinput
WARNING
All Input is Evil!
K. Puschke phpMySQL
96. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Userinput
WARNING
All Input is Evil!
user benutzen nicht das Formular, erzeugen die
POST/GET-Daten selbst
K. Puschke phpMySQL
97. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Userinput
WARNING
All Input is Evil!
user benutzen nicht das Formular, erzeugen die
POST/GET-Daten selbst
deshalb: auch Eingaben prüfen, die vermeintlich
vorgegebene Werte haben (radiobuttons, menus)
K. Puschke phpMySQL
98. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Eingaben unschädlich machen
Eingaben filtern
Whitelist: explizit festlegen, welche Zeichen zulässig sind
(z.B. nur Buchstaben), alles andere entfernen
K. Puschke phpMySQL
99. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Eingaben unschädlich machen
Eingaben filtern
Whitelist: explizit festlegen, welche Zeichen zulässig sind
(z.B. nur Buchstaben), alles andere entfernen
Blacklist: explizit festlegen, welche Zeichen unzulässig
sind (z.B. <,>,/), diese entfernen
K. Puschke phpMySQL
100. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Eingaben unschädlich machen
Eingaben filtern
Whitelist: explizit festlegen, welche Zeichen zulässig sind
(z.B. nur Buchstaben), alles andere entfernen
Blacklist: explizit festlegen, welche Zeichen unzulässig
sind (z.B. <,>,/), diese entfernen
bei Erstellung der Listen kann leicht etwas übersehen
werden - Filterungen sind daher fehleranfällig!
K. Puschke phpMySQL
101. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Eingaben unschädlich machen
Escape/Maskieren
Eingaben vor der weiteren Verarbeitung escapen,
d.h. gefährliche Zeichen maskieren
K. Puschke phpMySQL
102. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Eingaben unschädlich machen
Escape/Maskieren
Eingaben vor der weiteren Verarbeitung escapen,
d.h. gefährliche Zeichen maskieren
abhängig von der Art der weiteren Verarbeitung
K. Puschke phpMySQL
103. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Eingaben unschädlich machen
Escape/Maskieren
Eingaben vor der weiteren Verarbeitung escapen,
d.h. gefährliche Zeichen maskieren
abhängig von der Art der weiteren Verarbeitung
Beispiel: für Ausgabe von HTML gefährliche Zeichen in
HTML-Entities umwandeln
K. Puschke phpMySQL
104. Erste Schritte
Grundbegriffe des Web Skalare Daten
PHP Programmierung Ablaufsteuerung
MySQL Datenbanken Userinput verarbeiten
Website mit DB-Anbindung
Eingaben unschädlich machen
Escape/Maskieren
Eingaben vor der weiteren Verarbeitung escapen,
d.h. gefährliche Zeichen maskieren
abhängig von der Art der weiteren Verarbeitung
Beispiel: für Ausgabe von HTML gefährliche Zeichen in
HTML-Entities umwandeln
geeignete php-Funktionen vorhanden, keine Gefahr etwas
zu vergessen - weniger fehleranfällig
K. Puschke phpMySQL
105. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Outline
1 Erste Schritte
2 Grundbegriffe des Web
3 PHP Programmierung
4 MySQL Datenbanken
Einführung
Überblick verschaffen
Einfache Abfragen
Ergebnisse einschränken
5 Website mit Datenbankanbindung
K. Puschke phpMySQL
106. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Datenbanksystem
Datenbank und Datenbankmanagementsystem
Datenbanksystem dient der Speicherung und Verwaltung
von Daten
K. Puschke phpMySQL
107. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Datenbanksystem
Datenbank und Datenbankmanagementsystem
Datenbanksystem dient der Speicherung und Verwaltung
von Daten
besteht aus Datenbanken und
Datenbankmanagementsystem (DBMS)
K. Puschke phpMySQL
108. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Datenbanksystem
Datenbank und Datenbankmanagementsystem
Datenbanksystem dient der Speicherung und Verwaltung
von Daten
besteht aus Datenbanken und
Datenbankmanagementsystem (DBMS)
Datenbank: strukturiert abgelegte Daten
K. Puschke phpMySQL
109. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Datenbanksystem
Datenbank und Datenbankmanagementsystem
Datenbanksystem dient der Speicherung und Verwaltung
von Daten
besteht aus Datenbanken und
Datenbankmanagementsystem (DBMS)
Datenbank: strukturiert abgelegte Daten
zu verwaltende Daten, z.B. Adressen
K. Puschke phpMySQL
110. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Datenbanksystem
Datenbank und Datenbankmanagementsystem
Datenbanksystem dient der Speicherung und Verwaltung
von Daten
besteht aus Datenbanken und
Datenbankmanagementsystem (DBMS)
Datenbank: strukturiert abgelegte Daten
zu verwaltende Daten, z.B. Adressen
Datenbankschema: Metadaten zur Datenbankdefinition
K. Puschke phpMySQL
111. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Datenbanksystem
Datenbank und Datenbankmanagementsystem
Datenbanksystem dient der Speicherung und Verwaltung
von Daten
besteht aus Datenbanken und
Datenbankmanagementsystem (DBMS)
Datenbank: strukturiert abgelegte Daten
zu verwaltende Daten, z.B. Adressen
Datenbankschema: Metadaten zur Datenbankdefinition
Datenbankmanagementsystem: Software zur Verwaltung
der Daten
K. Puschke phpMySQL
112. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Datenbanksystem
Datenbank und Datenbankmanagementsystem
Datenbanksystem dient der Speicherung und Verwaltung
von Daten
besteht aus Datenbanken und
Datenbankmanagementsystem (DBMS)
Datenbank: strukturiert abgelegte Daten
zu verwaltende Daten, z.B. Adressen
Datenbankschema: Metadaten zur Datenbankdefinition
Datenbankmanagementsystem: Software zur Verwaltung
der Daten
Datenbank definieren, erzeugen, manipulieren
K. Puschke phpMySQL
113. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
DBMS
K. Puschke phpMySQL
114. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
DBMS
sehr verbreitet in Webanwendungen
K. Puschke phpMySQL
115. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
DBMS
sehr verbreitet in Webanwendungen
auch eingebettet in anderen Anwendungen
K. Puschke phpMySQL
116. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
DBMS
sehr verbreitet in Webanwendungen
auch eingebettet in anderen Anwendungen
schwedische Firma MySQL AB, dann Sun Microsystems,
dann Übernahme durch Oracle
K. Puschke phpMySQL
117. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
DBMS
sehr verbreitet in Webanwendungen
auch eingebettet in anderen Anwendungen
schwedische Firma MySQL AB, dann Sun Microsystems,
dann Übernahme durch Oracle
kostenlose Community-Version, freie Software (GPL)
K. Puschke phpMySQL
118. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
DBMS
sehr verbreitet in Webanwendungen
auch eingebettet in anderen Anwendungen
schwedische Firma MySQL AB, dann Sun Microsystems,
dann Übernahme durch Oracle
kostenlose Community-Version, freie Software (GPL)
kostenpflichtige Enterprise-Version
K. Puschke phpMySQL
119. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
DBMS
sehr verbreitet in Webanwendungen
auch eingebettet in anderen Anwendungen
schwedische Firma MySQL AB, dann Sun Microsystems,
dann Übernahme durch Oracle
kostenlose Community-Version, freie Software (GPL)
kostenpflichtige Enterprise-Version
Relationales DBMS
K. Puschke phpMySQL
120. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
K. Puschke phpMySQL
121. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
hohe Verbreitung seit den 80er Jahren, z.B.
K. Puschke phpMySQL
122. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
hohe Verbreitung seit den 80er Jahren, z.B.
MySQL
K. Puschke phpMySQL
123. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
hohe Verbreitung seit den 80er Jahren, z.B.
MySQL
PostgreSQL
K. Puschke phpMySQL
124. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
hohe Verbreitung seit den 80er Jahren, z.B.
MySQL
PostgreSQL
Oracle
K. Puschke phpMySQL
125. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
hohe Verbreitung seit den 80er Jahren, z.B.
MySQL
PostgreSQL
Oracle
...
K. Puschke phpMySQL
126. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
hohe Verbreitung seit den 80er Jahren, z.B.
MySQL
PostgreSQL
Oracle
...
Datenbank als Sammlung von Relationen (Tabellen)
K. Puschke phpMySQL
127. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
hohe Verbreitung seit den 80er Jahren, z.B.
MySQL
PostgreSQL
Oracle
...
Datenbank als Sammlung von Relationen (Tabellen)
Relation: Menge von Tupeln (Datensätzen, Zeilen)
K. Puschke phpMySQL
128. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
hohe Verbreitung seit den 80er Jahren, z.B.
MySQL
PostgreSQL
Oracle
...
Datenbank als Sammlung von Relationen (Tabellen)
Relation: Menge von Tupeln (Datensätzen, Zeilen)
unsortiert
K. Puschke phpMySQL
129. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Relationales Modell
E.F. Codd (1970)
hohe Verbreitung seit den 80er Jahren, z.B.
MySQL
PostgreSQL
Oracle
...
Datenbank als Sammlung von Relationen (Tabellen)
Relation: Menge von Tupeln (Datensätzen, Zeilen)
unsortiert
keine Duplikate
K. Puschke phpMySQL
130. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Client und Server
Datenbankserver : Software, die Datenbankdienste (ein
Datenbanksystem) anbietet
K. Puschke phpMySQL
131. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Client und Server
Datenbankserver : Software, die Datenbankdienste (ein
Datenbanksystem) anbietet
auch der Rechner, auf dem dieser Dienst läuft
K. Puschke phpMySQL
132. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Client und Server
Datenbankserver : Software, die Datenbankdienste (ein
Datenbanksystem) anbietet
auch der Rechner, auf dem dieser Dienst läuft
Anwendung oder Client greift auf den Datenbankserver zu
K. Puschke phpMySQL
133. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
K. Puschke phpMySQL
134. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
K. Puschke phpMySQL
135. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
K. Puschke phpMySQL
136. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
...
K. Puschke phpMySQL
137. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
...
Webanwendungen
K. Puschke phpMySQL
138. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
...
Webanwendungen
MediaWiki
K. Puschke phpMySQL
139. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
...
Webanwendungen
MediaWiki
WordPress
K. Puschke phpMySQL
140. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
...
Webanwendungen
MediaWiki
WordPress
unsere selbstprogrammierte Anwendung
K. Puschke phpMySQL
141. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
...
Webanwendungen
MediaWiki
WordPress
unsere selbstprogrammierte Anwendung
...
K. Puschke phpMySQL
142. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
...
Webanwendungen
MediaWiki
WordPress
unsere selbstprogrammierte Anwendung
...
Anwendungen mit eingebetteter Datenbank
K. Puschke phpMySQL
143. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
...
Webanwendungen
MediaWiki
WordPress
unsere selbstprogrammierte Anwendung
...
Anwendungen mit eingebetteter Datenbank
Zimbra
K. Puschke phpMySQL
144. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
MySQL
Clients und Anwendungen
Kommandozeilenclient mysql
Webinterface phpmyadmin
MySQL GUI Tools
...
Webanwendungen
MediaWiki
WordPress
unsere selbstprogrammierte Anwendung
...
Anwendungen mit eingebetteter Datenbank
Zimbra
...
K. Puschke phpMySQL
145. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Erste Befehle
SHOW DATABASES zeigt alle Datenbanken
K. Puschke phpMySQL
146. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Erste Befehle
SHOW DATABASES zeigt alle Datenbanken
USE datenbank wählt Datenbank datenbank aus
K. Puschke phpMySQL
147. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Erste Befehle
SHOW DATABASES zeigt alle Datenbanken
USE datenbank wählt Datenbank datenbank aus
SHOW TABLES zeigt Tabellen der gewählten Datenbank
K. Puschke phpMySQL
148. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Erste Befehle
SHOW DATABASES zeigt alle Datenbanken
USE datenbank wählt Datenbank datenbank aus
SHOW TABLES zeigt Tabellen der gewählten Datenbank
DESCRIBE tabelle zeigt Spalten der Tabelle an
K. Puschke phpMySQL
149. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Abfragen I
SELECT
K. Puschke phpMySQL
150. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Abfragen I
SELECT
verlangt Angabe von Spalte(n) und Tabellen, die
auszugeben sind
K. Puschke phpMySQL
151. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Abfragen I
SELECT
verlangt Angabe von Spalte(n) und Tabellen, die
auszugeben sind
* bedeutet alle Spalten der Tabelle
K. Puschke phpMySQL
152. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Abfragen I
SELECT
verlangt Angabe von Spalte(n) und Tabellen, die
auszugeben sind
* bedeutet alle Spalten der Tabelle
SELECT Name,Vorname FROM KundInnen
K. Puschke phpMySQL
153. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Abfragen I
SELECT
verlangt Angabe von Spalte(n) und Tabellen, die
auszugeben sind
* bedeutet alle Spalten der Tabelle
SELECT Name,Vorname FROM KundInnen
SELECT * FROM KundInnen
K. Puschke phpMySQL
154. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Abfragen I
SELECT
verlangt Angabe von Spalte(n) und Tabellen, die
auszugeben sind
* bedeutet alle Spalten der Tabelle
SELECT Name,Vorname FROM KundInnen
SELECT * FROM KundInnen
ORDER BY
K. Puschke phpMySQL
155. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Abfragen I
SELECT
verlangt Angabe von Spalte(n) und Tabellen, die
auszugeben sind
* bedeutet alle Spalten der Tabelle
SELECT Name,Vorname FROM KundInnen
SELECT * FROM KundInnen
ORDER BY
sortiert Ausgabe
K. Puschke phpMySQL
156. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Abfragen I
SELECT
verlangt Angabe von Spalte(n) und Tabellen, die
auszugeben sind
* bedeutet alle Spalten der Tabelle
SELECT Name,Vorname FROM KundInnen
SELECT * FROM KundInnen
ORDER BY
sortiert Ausgabe
SELECT Name,Vorname FROM KundInnen ORDER BY
Name
K. Puschke phpMySQL
157. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Formatierung
Good Practice
SELECT * nicht in Anwendungen verwenden!
K. Puschke phpMySQL
158. Erste Schritte
Einführung
Grundbegriffe des Web
Überblick verschaffen
PHP Programmierung
Einfache Abfragen
MySQL Datenbanken
Ergebnisse einschränken
Website mit DB-Anbindung
Formatierung
Good Practice
SELECT * nicht in Anwendungen verwenden!
praktisch bei interaktivem Zugriff auf DB
K. Puschke phpMySQL