Jetzt lernen wir. Einführung Was ist PHP? Personal Home Page PHP Hypertext Preprocessor PHP ist...
-
Upload
lothar-nentwig -
Category
Documents
-
view
114 -
download
0
Transcript of Jetzt lernen wir. Einführung Was ist PHP? Personal Home Page PHP Hypertext Preprocessor PHP ist...
Jetzt lernen Jetzt lernen wirwir
EinführungEinführung
Was ist PHP?Was ist PHP?
• Personal Home Page
PHP Hypertext Preprocessor• PHP ist eine Open Source- und serverseitige
Scriptsprache für das Web.
Was kann PHP?Was kann PHP?
• Mit können PHP dynamische Websites aufbaut werden.• PHP kann mit Datenbanken eingesetzt werden
Wozu braucht man Wozu braucht man PHP?PHP?
• Große Datenbank gestützte Websites zu verwalten.
Wie entstand PHP?Wie entstand PHP?
• Rasmus Lerdorf erschuf 1994 mit eine Gruppe von Web-Publishing-Makros die erste PHP Version.
• Sollte ursprünglich eine Gruppe von Makros die pflege von privaten Homepages unterstützen.
• Späte begann sich die Entwicklergemeinde dafür zu interessieren.
• Seit 1997 arbeitet ein Programmierteam an diesem Projekt.
Wie entstand PHP?Wie entstand PHP?
• PHP 3 ist eine Gemeinschaftsarbeit.• PHP 3 wurde zur beliebtesten Server-
Programmiersprache.• Ein Grund dafür ist Unterstützung vom Webserver
Apache und MySQL.• Die neuste Version ist PHP 4.
Vorteil von PHP?Vorteil von PHP?
• Entwicklungsprozess von PHP oft bedeutend schneller.• PHP kann auf alle Betriebsystemen und den meisten
Server ausgeführt werden.• Der Entwicklungsaufwand ist erheblich reduziert.• Programmierung und das Design kann effektiv und
flexibel gestaltet werden.• Open Source
Hilfe!Hilfe!
• Im Internet gibt es immer Hilfe!• Offizelle PHP-Site www.php.net und Onlinehandbuch
www.php.net/manual.• Suchfunktion der PHP-Site.• PHP-Wissensdatenbank www.faqts.com/
knowledge-base.• Mailingliste und Mailing-Archive
Unser erstes Unser erstes ScriptScript
Was brauchen wir?Was brauchen wir?
• Eine Texteditor z.B. Notepad oder VI• Einen Webserver z.B. Apache • HTML Vorkenntnisse wären gut
Die PHP-DateiDie PHP-Datei
Eine PHP-Datei wird mit den Endungen
.php
oder
.php3
abgespeichert.
PHP-ScriptPHP-Script
Ein PHP-Script sieht so aus:
<?php
print("Hallo Welt!");
?>
Ergebnis:
Hallo Welt!
PHP in HTML PHP in HTML einbetteneinbetten<html><head><titel>PHP in HTML einbetten</titel></head><body><b><?php print("Hallo Welt!");?></b></body></html>
Ergebnis:
Hallo Welt!
KommentareKommentare
Kommentare sind Anmerkungen zum Script, die nicht vom Browser wiedergegeben werden.
// Dies ist ein Kommentar
# Das hier auch
/*
Es gibt auch
Mehrzellige Kommentare.
*/
Die SpracheDie Sprache
VariablenVariablenEine Variable ist ein Speicherbereich, dem sie einen bestimmten Wert zuweisen können.
$var = "Hallo Welt!";
Man kann den gespeicherten Wert auch wiedergeben:
print "$var";
Ergebnis:
Hallo Welt!
BeispielBeispiel<html><head><titel>Wie gebe ich eine Variable aus?</titel></head><body><?php $variable1 = "Hallo Welt!"; $variable2 = "Schöner Tag heute.";
print "$variable1<br>"; print "$varaible2";?></body></html>
BeispielBeispiel
Ergebnis:
Hallo Welt!Schöner Tag heute.
HTML-HTML-FormularverarbeitungFormularverarbeitung
Formularverarbeitung
FormularverarbeitunFormularverarbeitungg
<form action=“auswertung.php“ method=“POST“>
<form action=“auswertung.php“ method=“GET“>
•2 Möglichkeiten:2 Möglichkeiten:
1: <!–- formular3.php -->
2:
3: <HTML>
4: <HEAD><TITLE>Formular</TITLE></HEAD>
5: <BODY>
6: <FORM action="formular3.php" method="GET">
7: <INPUT type="text" name="benutzereingabe"></input><br>
8: <INPUT type="submit"></input>
9: </FORM>
10: </BODY>
11: </HTML>
Formulardaten Formulardaten senden senden
[Dateiname] [name]? [wert]= & ...
Formular3.php benutzereingabe? Bitte+3+Pizza+Salami= & ...
Alle nicht-alphanumerischen Zeichen (a-Z; 0-9) außer „_“ werden durch ein Prozentzeichen „%“ gefolgt von zwei Hexadezimalziffern („00“-“FF“) ersetzt. Leerzeichen werden durch ein plus („+“) ersetzt.
Beispiel:
„§“ „%A7“
Ein Beispiel: GET Methode
FormulardatenFormulardaten
auswertenauswerten I
?
Zugriff auf Zugriff auf FormulardatenFormulardaten
Formulardatei:
<INPUT type="text" name=[name]></input>
<INPUT type="text" name="benutzereingabe"></input>
Hinweis:
Anstatt jedes mal $GLOBALS einzugeben, kann man, wenn man sich auf oberster
Ebene (Hauptdatei) befindet, einfach den Namen des Eingabefeldes als
Variabelnamen nehmen:
Bsp: benutzereingabe $benutzereingabe
Zugriff im PHP-Script:
$GLOBALS[name]
$GLOBALS["benutzereingabe"]
Formulardaten Formulardaten auswerten IIauswerten IIEin Beispiel
1: <!–- formular3.php -->
2:
3: <HTML>
4: <HEAD><TITLE>Formular</TITLE></HEAD>
5: <BODY>
...
unsere Php Datei.......
Hinweis:
Das Formular verweist auf sich selbst. D.h. es schickt die Daten an
sich selbst um sie dann auszuwerten ...
9: <FORM action="formular3.php" method="GET">
10: <INPUT type="text" name="benutzereingabe"></input><br>
11: <INPUT type="submit"></input>
12: </FORM>
13: </BODY>
14: </HTML>
was ist zu tun?
if(isset($benutzereingabe)) {
...
} 6: if(isset($benutzereingabe)) {
8: }
print $benutzereingabe;
7: print $benutzereingabe;
...
...
Formulardaten Formulardaten auswerten IIIauswerten IIIEin Beispiel
...
<?php
if(isset($benutzereingabe)) {
print "Ihre Anfrage: ";
print "<b>";
print $benutzereingabe;
print "</b><br>";
print "Vielen Dank, für Ihre Anfrage. Wenn Sie wollen, können Sie noch weitere Anfragen senden:";
}
...
Globale Variablen IGlobale Variablen I
_ENV
REDIRECT_URL /winklerhof/test.php
REMOTE_ADDR 127.0.0.1
REMOTE_PORT 1487
SCRIPT_FILENAME d:/apache/apache/cgi-bin/php/php.exe
SERVER_ADDR 127.0.0.1
SERVER_ADMIN [email protected]
SERVER_NAME localhot
SERVER_PORT 80
SERVER_SIGNATURE Apache/1.3.20 Server at localhot Port 80
SERVER_SOFTWARE Apache/1.3.20 (Win32)
WINDIR C:\\WINDOWS
GATEWAY_INTERFACE CGI/1.1
SERVER_PROTOCOL HTTP/1.1
REQUEST_METHOD GET
QUERY_STRING benutzereingabe=Bitte+3+Pizza+Salami
REQUEST_URI /winklerhof/test.php?benutzereingabe=Bitte+3+Pizza+Salami
SCRIPT_NAME /cgi-bin/php/php.exe
PATH_INFO /winklerhof/test.php
PATH_TRANSLATED d:\\apache\\apache\\htdocs\\winklerhof\\test.php
HTTP_POST_FILES
_FILES
_REQUEST benutzereingabe Bitte 3 Pizza Salami
PHPSESSID 3bf2891f9f4eb5ad33cf5cdd1ef32a70
GLOBALS Array
Globale Variablen IIGlobale Variablen IIVariable Inhalt Beispiel
$REMOTE_USER_AGENT Name und Versionsnummer des Clients
Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90)
$REMOTE_ADDR IP-Adresse des Clients 127.0.0.1
$QUERY_STRING Anfrage Methode (GET oder POST)
GET
$REQUEST_URI Volle Adresse der Anfrage einschließlich Abfragestring
/test.php?benutzereingabe=Bitte+3+Pizza+Salami
$HTTP_REFERER Herkunftsseite http://butterbrezel/formular3.html
Hidden Inputs – Hidden Inputs – Problem Problem
!!! Problem: !!!
Daten werden nicht von 1. an 3. Formular weitergegeben
1010100101101101101010110110101101010101010110
Hidden Inputs - Hidden Inputs - LösungenLösungenLösungsvorschlag:
„Den Anwender auffordern, alles noch einmal einzugeben:“
Problem:
Zu viel und stumpfsinnige Arbeit für den Anwender
Verbesserungsvorschlag:
Computer übernimmt „abtippen“ für den Anwender
Für den Anwender verstecken Hidden Inputs
Form2.php
Form1.php
Hidden Inputs - Hidden Inputs - RealisierungRealisierung
1: <!-- form1.php -->
... // HTML Tags
2: <FORM action="form2.php„ method="GET">
3: <INPUT type="text" name="benutzereingabe_1"></INPUT>
4: <INPUT type="submit"> </FORM>
... // HTML End-Tags
1: <!–- form2.php -->
... // HTML Tags
2: <FORM action="form3.php„ method="GET">
3: <INPUT type="text" name="benutzereingabe_2"></INPUT>
5: <INPUT type="submit"> </FORM>
... // HTML End-Tags
4: <INPUT type="hidden"
name="benutzereingabe_1"
value="<?= $GLOBALS["benutzereingabe_1"] ?>" >
</INPUT>
Eingabefeld erstellen
<INPUT
... // Attribute
>
</INPUT>
Eingabefeld als „unsichtbar“ definieren
<INPUT type="hidden"
... // Attribute
>
</INPUT>
Namen des Ursprungfelds zuweisen
<INPUT type="hidden"
name="benutzereingabe_1"
>
</INPUT>
Wert des Ursprungfelds zuweisen
<INPUT type="hidden"
name="benutzereingabe_1"
value="<?=
$GLOBALS["benutzereingabe_1"] ?>"
</INPUT>
AnhangAnhang
QuellenQuellen
Jetzt lerne ich PHP 4Autor: Matt ZandstraMarkt+Technik Verlag
Viel Spass beim Viel Spass beim programmieren!programmieren!
Wünscht euch das PHP-Pinup GirlWünscht euch das PHP-Pinup Girl