mirror of
https://github.com/php/doc-de.git
synced 2026-03-23 23:02:13 +01:00
516 lines
21 KiB
XML
516 lines
21 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 1fd637525fd3bbaec04f6fff80eeb33fce880b10 Maintainer: cmb Status: ready -->
|
|
<chapter xml:id="tutorial" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<info><title>Ein kleines Tutorial</title></info>
|
|
|
|
<para>
|
|
Auf diesen Seiten möchten wir Ihnen die Grundlagen von PHP in einem kleinen
|
|
Tutorial vorstellen. Dieser Text behandelt nur das Erstellen von
|
|
dynamischen Webseiten, obwohl PHP natürlich nicht nur dafür geeignet ist.
|
|
Weitere Informationen finden Sie im Abschnitt
|
|
<link linkend="intro-whatcando">Was kann PHP?</link>.
|
|
</para>
|
|
<para>
|
|
Mit PHP erweiterte Webseiten werden wie normale HTML-Seiten behandelt. Sie
|
|
können sie genauso wie normale HTML-Seiten erstellen und bearbeiten.
|
|
</para>
|
|
|
|
<section xml:id="tutorial.requirements">
|
|
<info><title>Was brauche ich?</title></info>
|
|
<para>
|
|
In diesem Tutorial gehen wir davon aus, dass auf Ihrem Server die
|
|
PHP-Unterstützung aktiviert ist und dass die Dateiendung
|
|
<filename class="extension">.php</filename> PHP zugeordnet ist. Auf den
|
|
meisten Servern ist dies die Standardeinstellung für PHP-Dateien, aber
|
|
fragen Sie bitte Ihren Server-Administrator, um sicherzugehen. Wenn Ihr
|
|
Server PHP unterstützt, müssen Sie nichts machen. Erstellen Sie einfach
|
|
Ihre <filename class="extension">.php</filename>-Dateien und legen Sie
|
|
diese in Ihr Web-Verzeichnis - der Server wird sie dann für Sie parsen. Sie
|
|
müssen nichts kompilieren und auch keine Zusatz-Tools installieren. Stellen
|
|
Sie sich diese PHP-erweiterten Dateien wie normale HTML-Seiten mit einer
|
|
ganzen Familie von "magischen" Tags vor, die Sie verschiedenste Dinge tun
|
|
lassen.
|
|
</para>
|
|
<para>
|
|
Angenommen, Sie möchten Bandbreite sparen und lokal entwickeln. In diesem
|
|
Fall müssen Sie einen Webserver wie &zb;
|
|
<link xlink:href="&url.apache;">Apache</link> und natürlich
|
|
<link xlink:href="&url.php.downloads;">PHP</link> installieren. Sehr
|
|
empfehlenswert ist auch die Installation einer Datenbank wie &zb;
|
|
<link xlink:href="&url.mysql.docs;">MySQL</link>.
|
|
</para>
|
|
<para>
|
|
Sie können diese Programme entweder eins nach dem anderen selbst
|
|
installieren oder den folgenden einfacheren Weg gehen. Unser Handbuch
|
|
bietet ausführliche
|
|
<link linkend="install">Installationsanweisungen für PHP</link> (dabei
|
|
gehen wir davon aus, dass Sie schon einen Webserver installiert haben).
|
|
Falls Sie Probleme bei der Installation von PHP haben, dann empfehlen wir
|
|
Ihnen, dass Sie Ihre Fragen auf unserer
|
|
<link xlink:href="&url.php.mailing-lists;">Installations-Mailingliste</link>
|
|
stellen. Noch einfacher ist es,
|
|
<link xlink:href="&url.installkits;">vorkonfigurierte Pakete</link> für
|
|
Ihr Betriebssystem zu verwenden, die alle oben genannten Programme mit
|
|
einigen wenigen Mausklicks installieren. Es ist ziemlich einfach, einen
|
|
Webserver mit PHP-Unterstützung auf jedem Betriebssystem, wie macOS, Linux
|
|
oder Windows, aufzusetzen. Unter Linux sind
|
|
<link xlink:href="&url.rpmfind;">rpmfind</link> und
|
|
<link xlink:href="&url.rpmfind.pbone;">PBone</link> hilfreich, wenn Sie
|
|
RPM-Pakete suchen. Wenn Sie Pakete für Debian suchen, dann besuchen Sie
|
|
bitte <link xlink:href="&url.apt-get;">apt-get</link>.
|
|
</para>
|
|
</section>
|
|
|
|
<section xml:id="tutorial.firstpage">
|
|
<info><title>Ihre erste PHP-erweiterte Seite</title></info>
|
|
<para>
|
|
Erstellen Sie eine Datei mit dem Namen <filename>hallo.php</filename> und
|
|
speichern Sie diese im Wurzelverzeichnis Ihres Webservers
|
|
(<varname>DOCUMENT_ROOT</varname>) mit dem folgenden Inhalt:
|
|
</para>
|
|
<para>
|
|
<example>
|
|
<info><title>Unser erstes PHP-Skript: <filename>hallo.php</filename></title></info>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
|
|
echo "Hello World!";
|
|
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
<simpara>
|
|
Verwenden Sie Ihren Browser, um die Datei über die Webserver-URL
|
|
aufzurufen. Die URL muss mit <literal>/hallo.php</literal> enden. Wenn
|
|
Sie lokal entwickeln, sieht die URL &zb; so aus:
|
|
<literal>http://localhost/hallo.php</literal> oder so:
|
|
<literal>http://127.0.0.1/hallo.php</literal> - andere Adressen sind
|
|
aber, abhängig vom Webserver, auch möglich. Wenn alles korrekt
|
|
konfiguriert ist, wird die Datei von PHP geparst und Sie sehen die
|
|
Ausgabe "Hallo Welt" in Ihrem Browser.
|
|
</simpara>
|
|
<simpara>
|
|
PHP kann in eine normale HTML-Webseite eingebettet werden. Das bedeutet,
|
|
dass Sie innerhalb Ihres HTML-Dokuments die PHP-Anweisungen schreiben
|
|
können, wie im folgenden Beispiel gezeigt:
|
|
</simpara>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>PHP-Test</title>
|
|
</head>
|
|
<body>
|
|
<?php echo '<p>Hallo Welt</p>'; ?>
|
|
</body>
|
|
</html>
|
|
]]>
|
|
</programlisting>
|
|
<simpara>
|
|
Dies führt zur folgenden Ausgabe:
|
|
</simpara>
|
|
<screen role="html">
|
|
<![CDATA[
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>PHP-Test</title>
|
|
</head>
|
|
<body>
|
|
<p>Hallo Welt</p>
|
|
</body>
|
|
</html>
|
|
]]>
|
|
</screen>
|
|
</example>
|
|
</para>
|
|
<para>
|
|
Das Beispiel ist extrem einfach und natürlich brauchen Sie PHP nicht, um
|
|
eine Seite wie diese zu erstellen. Denn es macht nicht mehr, als mit der
|
|
<function>echo</function>-Anweisung von PHP <literal>Hallo Welt</literal>
|
|
auszugeben. Bitte beachten Sie, dass die Datei <emphasis>nicht
|
|
ausführbar</emphasis> sein muss. Der Server erkennt anhand der Dateiendung
|
|
".php", dass sie durch PHP interpretiert werden muss. Stellen Sie sich
|
|
eine normale HTML-Datei vor, die eine Menge von speziellen Tags enthält,
|
|
mit denen Sie einige interessante Dinge tun können.
|
|
</para>
|
|
<para>
|
|
Wenn Sie dieses Beispiel ausprobiert haben und Sie aber keine Ausgabe
|
|
erhalten haben oder zum Download aufgefordert worden sind oder die
|
|
komplette Datei als Text erhalten haben, dann ist es sehr wahrscheinlich,
|
|
dass auf Ihrem Server PHP nicht aktiviert oder falsch konfiguriert ist.
|
|
Fragen Sie in diesem Fall Ihren Administrator und weisen Sie ihn auf das
|
|
<link linkend="install">Installations-Kapitel</link> hin. Wenn Sie lokal
|
|
entwickeln, lesen Sie bitte das Installations-Kapitel, um festzustellen,
|
|
ob alles richtig konfiguriert wurde. Stellen Sie sicher, dass Sie die
|
|
Datei über das HTTP-Protokoll aufrufen können. Wenn Sie die Datei direkt
|
|
aus Ihrem Dateisystem aufrufen, wird sie nicht durch PHP geparst. Sollten
|
|
Ihre Probleme nach Lesen dieses Kapitels immer noch bestehen, zögern Sie
|
|
nicht und nutzen Sie eines der vielen
|
|
<link xlink:href="&url.php.support;">Support</link>-Angebote.
|
|
</para>
|
|
<para>
|
|
Der Sinn des Beispiels ist es, Ihnen das spezielle PHP Tag-Format zu
|
|
zeigen. Im Beispiel wurde <literal><?php</literal> verwendet, um den
|
|
Beginn eines PHP-Tags zu kennzeichnen. Anschließend folgte die
|
|
PHP-Anweisung. Mit dem schließenden Tag, <literal>?></literal>, wurde
|
|
der PHP-Modus wieder verlassen. Sie können an jeder Stelle und so oft Sie
|
|
wollen, in den PHP-Modus wechseln und ihn wieder verlassen. Für weitere
|
|
Details lesen Sie bitte den Abschnitt zu den
|
|
<link linkend="language.basic-syntax">Grundlagen der Syntax</link> von
|
|
PHP.
|
|
</para>
|
|
|
|
<note>
|
|
<info><title>Anmerkungen zu Zeilenwechseln</title></info>
|
|
<para>
|
|
Zeilenwechsel sind in HTML nur von geringer Bedeutung, trotzdem ist es
|
|
sinnvoll, HTML-Code durch Zeilenwechsel zu formatieren um die Lesbarkeit
|
|
zu erhöhen. Ein Zeilenwechsel, der direkt auf ein schließendes
|
|
<literal>?></literal> folgt, wird von PHP bei der Ausgabe entfernt.
|
|
Dies ist äußerst nützlich, wenn Sie viele PHP-Blöcke einfügen oder
|
|
Dateien inkludieren, die keine Ausgabe erzeugen sollen. Auf der anderen
|
|
Seite kann es aber auch verwirrend sein. Sie können einen Zeilenwechsel
|
|
erzwingen, indem Sie entweder ein zusätzliches Leerzeichen hinter
|
|
<literal>?></literal> einfügen oder explizit mit echo oder print ein
|
|
Zeilenwechselzeichen am Ende Ihres Codes ausgeben.
|
|
</para>
|
|
</note>
|
|
|
|
<note>
|
|
<info><title>Anmerkung zu Text-Editoren</title></info>
|
|
<para>
|
|
Es gibt eine ganze Reihe von Text-Editoren und integrierten
|
|
Entwicklungsumgebungen (Integrated Development Environments, IDEs), mit
|
|
denen Sie Ihre PHP-Dateien erstellen, bearbeiten und verwalten können.
|
|
Eine Liste solcher Programme finden Sie hier:
|
|
<link xlink:href="&url.phpeditorlist;">List of PHP editors</link>. Wenn
|
|
Sie einen Editor vorschlagen möchten, besuchen Sie bitte die genannte
|
|
Seite und bitten Sie den Betreiber der Seite, dass er den Editor der
|
|
Liste hinzufügt. Wir empfehlen Ihnen einen Editor zu verwenden, der
|
|
Syntax-Highlighting (die farbliche Hervorhebung von Code) bietet.
|
|
</para>
|
|
</note>
|
|
|
|
<note>
|
|
<info><title>Anmerkung zu Textverarbeitungsprogrammen</title></info>
|
|
<para>
|
|
Textverarbeitungsprogramme wie StarOffice Writer, Microsoft Word und
|
|
Abiword sind keine gute Wahl, um PHP-Dateien zu bearbeiten. Wenn Sie
|
|
eines dieser Programme für dieses Test-Skript nutzen möchten, dann müssen
|
|
Sie sicherstellen, dass die Datei als <emphasis>"Nur
|
|
Text"</emphasis>-Datei gespeichert wird, da PHP sonst das Skript nicht
|
|
lesen und nicht ausführen kann.
|
|
</para>
|
|
</note>
|
|
|
|
<para>
|
|
Nachdem Sie jetzt erfolgreich ein einfaches, funktionierendes PHP-Skript
|
|
geschrieben haben, wird es Zeit, das berühmteste PHP-Skript zu schreiben.
|
|
Rufen Sie die Funktion <function>phpinfo</function> auf und Sie bekommen
|
|
viele nützliche Informationen über Ihr System und Ihre Installation wie
|
|
&zb; die verfügbaren
|
|
<link linkend="language.variables.predefined">vordefinierten Variablen</link>,
|
|
die geladenen PHP-Module und die
|
|
<link linkend="configuration">Konfigurations</link>-Einstellungen. Nehmen
|
|
Sie sich etwas Zeit und schauen Sie sich diese wichtigen Informationen an.
|
|
</para>
|
|
<para>
|
|
<example>
|
|
<info><title>Anzeigen von Systeminformationen mit PHP</title></info>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php phpinfo(); ?>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
</para>
|
|
</section>
|
|
|
|
<section xml:id="tutorial.useful">
|
|
<info><title>Etwas Nützliches</title></info>
|
|
<para>
|
|
Kommen wir nun zu einem etwas nützlicheren Beispiel. Wir wollen prüfen,
|
|
welchen Browser der Besucher verwendet. Um das zu tun, prüfen wir den
|
|
"user agent"-String, den der Browser als Teil seiner HTTP-Anforderung
|
|
sendet. Diese Information ist in einer
|
|
<link linkend="language.variables">Variablen</link> abgelegt. In PHP
|
|
beginnen Variablen immer mit einem Dollar-Zeichen. Die Variable, die uns
|
|
jetzt interessiert, ist <varname>$_SERVER['HTTP_USER_AGENT']</varname>.
|
|
</para>
|
|
<note>
|
|
<para>
|
|
<varname>$_SERVER</varname> ist eine speziell reservierte PHP-Variable,
|
|
die alle Informationen über den Webserver enthält. Diese Variable wird
|
|
auch als Superglobal bezeichnet. Mehr Informationen darüber finden Sie im
|
|
Handbuch auf der Seite über
|
|
<link linkend="language.variables.superglobals">Superglobals</link>.
|
|
</para>
|
|
</note>
|
|
<para>
|
|
Um die Variable auszugeben, schreiben Sie einfach:
|
|
</para>
|
|
<para>
|
|
<example>
|
|
<info><title>Variable ausgeben (Array-Element)</title></info>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
echo $_SERVER['HTTP_USER_AGENT'];
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
<para>
|
|
Die Ausgabe dieses Beispiels könnte so aussehen:
|
|
</para>
|
|
<screen role="html">
|
|
<![CDATA[
|
|
Mozilla/5.0 (Linux) Firefox/112.0
|
|
]]>
|
|
</screen>
|
|
</example>
|
|
</para>
|
|
<para>
|
|
Es gibt viele <link linkend="language.types">Typen</link> von Variablen.
|
|
Im obigen Beispiel haben wir ein Element einer
|
|
<link linkend="language.types.array">Array</link>-Variable ausgegeben.
|
|
Arrays können sehr nützlich sein.
|
|
</para>
|
|
<para>
|
|
<varname>$_SERVER</varname> ist nur eine von vielen Variablen, die Ihnen
|
|
automatisch von PHP zur Verfügung gestellt werden. Eine Liste finden Sie
|
|
auf der Seite
|
|
<link linkend="reserved.variables">Reservierte Variablen</link> im
|
|
Handbuch. Eine vollständige Liste können Sie auch bekommen, wenn Sie sich
|
|
die Ausgabe der Funktion <function>phpinfo</function> ansehen, die im
|
|
Beispiel des vorigen Abschnitts verwendet wurde.
|
|
</para>
|
|
<para>
|
|
Sie können mehrere PHP-Anweisungen innerhalb eines PHP-Tags platzieren und
|
|
so kleine Code-Blöcke schreiben, die mehr als nur eine Ausgabe mit
|
|
<function>echo</function> enthalten. Wenn wir zum Beispiel prüfen möchten,
|
|
ob es sich beim Browser des Besuchers um den Firefox handelt, können wir
|
|
folgenden Code verwenden:
|
|
</para>
|
|
<para>
|
|
<example>
|
|
<info><title>Beispiel, das
|
|
<link linkend="language.control-structures">Kontrollstrukturen</link> und
|
|
<link linkend="language.functions">Funktionen</link> verwendet</title></info>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
if (str_contains($_SERVER['HTTP_USER_AGENT'], 'Firefox')) {
|
|
echo 'Sie verwenden Firefox.';
|
|
}
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
<para>
|
|
Die Ausgabe dieses Skripts könnte so aussehen:
|
|
</para>
|
|
<screen role="html">
|
|
<![CDATA[
|
|
Sie verwenden Firefox.
|
|
]]>
|
|
</screen>
|
|
</example>
|
|
</para>
|
|
<para>
|
|
Hier stellen wir Ihnen eine ganze Reihe von neuen Konzepten vor. Wir haben
|
|
hier zuerst eine
|
|
<link linkend="control-structures.if">if</link>-Anweisung. Wenn Sie mit der
|
|
grundlegenden Syntax der Programmiersprache C vertraut sind, sollte Ihnen
|
|
dies logisch erscheinen. Andernfalls sollten Sie sich ein Buch mit einer
|
|
PHP-Einführung besorgen und die ersten Kapitel lesen. Sie können natürlich
|
|
auch in die <link linkend="langref">Sprachreferenz</link> des Handbuchs
|
|
schauen.
|
|
</para>
|
|
<para>
|
|
Das zweite hier vorgestellte Konzept ist der Aufruf der Funktion
|
|
<function>str_contains</function>. <function>str_contains</function> ist
|
|
eine in PHP eingebaute Funktion, die feststellt, ob eine gegebene
|
|
Zeichenkette eine andere Zeichenkette enthält. In diesem Fall suchen wir
|
|
nach <literal>'Firefox'</literal> (die so genannte Nadel, engl. needle) in
|
|
<varname>$_SERVER['HTTP_USER_AGENT']</varname> (der so genannte Heuhaufen,
|
|
engl. haystack). Wenn die Nadel im Heuhaufen gefunden wird, gibt die
|
|
Funktion &true; zurück. Andernfalls wird &false; zurückgegeben. Wenn
|
|
&true; zurückgeben wird, wird die
|
|
<link linkend="control-structures.if">if</link>-Anweisung zu &true;
|
|
ausgewertet und der Code innerhalb der geschweiften Klammern wird
|
|
ausgeführt. Andernfalls wird der Code innerhalb der Klammern nicht
|
|
ausgeführt. Probieren Sie weitere ähnliche Beispiele mit
|
|
<link linkend="control-structures.if">if</link>,
|
|
<link linkend="control-structures.else">else</link> und anderen Funktionen
|
|
wie <function>strtoupper</function> oder <function>strlen</function>. Jede
|
|
dieser Handbuch-Seiten enthält weitere Beispiele. Wenn Sie unsicher sind,
|
|
wie die Funktionen verwendet werden, lesen Sie die Handbuch-Seite
|
|
<link linkend="about.prototypes">Wie sind Funktionsdefinitionen (Prototypen) zu lesen?</link>
|
|
und den Abschnitt zu den
|
|
<link linkend="language.functions">PHP-Funktionen</link>.
|
|
</para>
|
|
<para>
|
|
Wir können jetzt einen Schritt weitergehen und sehen, wie Sie innerhalb
|
|
eines PHP-Blocks den PHP-Modus verlassen und wieder in ihn hinein gelangen
|
|
können:
|
|
</para>
|
|
<para>
|
|
<example>
|
|
<info><title>HTML- und PHP-Modus vermischt</title></info>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
if (str_contains($_SERVER['HTTP_USER_AGENT'], 'Firefox')) {
|
|
?>
|
|
<h3>str_contains() hat true zurückgegeben</h3>
|
|
<p>Sie verwenden Firefox</p>
|
|
<?php
|
|
} else {
|
|
?>
|
|
<h3>str_contains() hat false zurückgegeben</h3>
|
|
<p>Sie verwenden nicht Firefox</p>
|
|
<?php
|
|
}
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
<para>
|
|
Die Ausgabe dieses Skripts könnte so aussehen:
|
|
</para>
|
|
<screen role="html">
|
|
<![CDATA[
|
|
<h3>str_contains() hat true zurückgegeben</h3>
|
|
<p>Sie verwenden Firefox</p>
|
|
]]>
|
|
</screen>
|
|
</example>
|
|
</para>
|
|
<para>
|
|
Anstatt die PHP-Anweisung echo für die Ausgabe zu verwenden, haben wir den
|
|
PHP-Modus verlassen und normales HTML verwendet. Der wichtige und
|
|
entscheidende Punkt hierbei ist, dass der logische Ablauf des Skripts
|
|
dadurch nicht gestört wird. Nur einer der beiden HTML-Blöcke wird
|
|
ausgegeben - abhängig davon, was <function>str_contains</function> zurückgibt
|
|
bzw. ob die Zeichenkette <literal>Firefox</literal> gefunden wird oder nicht.
|
|
</para>
|
|
</section>
|
|
|
|
<section xml:id="tutorial.forms">
|
|
<info><title>Formulare verarbeiten</title></info>
|
|
<para>
|
|
Eine der mächtigsten Funktionen von PHP ist die Art, wie HTML-Formulare
|
|
verarbeitet werden. Sie sollten wissen, dass jedes Element eines Formulars
|
|
automatisch in Ihren PHP-Skripts verfügbar ist. Bitte lesen Sie die Seite
|
|
<link linkend="language.variables.external">Variablen aus externen Quellen</link>
|
|
für weitere Informationen und Beispiele über die Verwendung von Formularen
|
|
mit PHP. Hier ist ein HTML-Beispielformular:
|
|
</para>
|
|
<para>
|
|
<example>
|
|
<info><title>Ein einfaches HTML-Formular</title></info>
|
|
<programlisting role="html">
|
|
<![CDATA[
|
|
<form action="action.php" method="post">
|
|
<label for="name">Ihr Name:</label>
|
|
<input name="name" id="name" type="text">
|
|
|
|
<label for="age">Ihr Alter:</label>
|
|
<input name="alter" id="alter" type="number">
|
|
|
|
<button type="submit">Submit</button>
|
|
</form>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
</para>
|
|
<para>
|
|
An diesem Formular ist nichts Besonderes. Es ist ein normales
|
|
HTML-Formular ohne irgendwelche speziellen Tags. Wenn der Benutzer das
|
|
Formular ausfüllt und den Submit-Button anklickt, wird die Seite
|
|
<filename>action.php</filename> aufgerufen. Diese Datei könnte so
|
|
aussehen:
|
|
</para>
|
|
<para>
|
|
<example>
|
|
<info><title>Daten des Formulars ausgeben</title></info>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
Hallo <?php echo htmlspecialchars($_POST['name']); ?>.
|
|
Sie sind <?php echo (int) $_POST['alter']; ?> Jahre alt.
|
|
]]>
|
|
</programlisting>
|
|
<para>
|
|
Die Ausgabe des Skripts könnte dann so aussehen:
|
|
</para>
|
|
<screen role="html">
|
|
<![CDATA[
|
|
Hallo Joe. Sie sind 22 Jahre alt.
|
|
]]>
|
|
</screen>
|
|
</example>
|
|
</para>
|
|
<para>
|
|
Abgesehen von den beiden Teilen <function>htmlspecialchars</function> und
|
|
<literal>(int)</literal> sollte einfach zu verstehen sein, was hier
|
|
geschieht. <function>htmlspecialchars</function> stellt sicher, dass die
|
|
Zeichen, die in HTML eine spezielle Bedeutung haben, ordentlich kodiert
|
|
werden, sodass niemand HTML-Tags oder Javascript-Code in Ihre Seite
|
|
einschmuggeln kann. Da wir wissen, dass das Feld "alter" eine Zahl
|
|
enthalten soll,
|
|
<link linkend="language.types.typecasting">konvertieren</link> wir es in
|
|
einen &integer;-Wert, wodurch automatisch überflüssige Zeichen entfernt
|
|
werden. Sie können diese Aufgabe auch PHP überlassen, indem Sie die
|
|
<link linkend="ref.filter">Filter</link>-Erweiterung verwenden. Die
|
|
Variablen <varname>$_POST['name']</varname> und
|
|
<varname>$_POST['alter']</varname> werden für Sie automatisch von PHP
|
|
gesetzt. Weiter oben haben wir das superglobale Array
|
|
<varname>$_SERVER</varname> eingeführt, jetzt verwenden wir hier das -
|
|
ebenfalls superglobale - Array <varname>$_POST</varname>, welches alle
|
|
POST-Daten enthält. Beachten Sie, dass die im Formular verwendete
|
|
<emphasis>Methode</emphasis> POST ist. Hätten wir <emphasis>GET</emphasis>
|
|
verwendet, wären die Daten unseres Formulars stattdessen im superglobalen
|
|
Array <varname>$_GET</varname> verfügbar. Sie können auch das superglobale
|
|
Array <varname>$_REQUEST</varname> verwenden, wenn die Quelle der Daten
|
|
keine Rolle spielt. Dieses Array enthält die GET-, POST- und COOKIE-Daten.
|
|
</para>
|
|
</section>
|
|
|
|
<section xml:id="tutorial.whatsnext">
|
|
<info><title>Und weiter?</title></info>
|
|
<para>
|
|
Mit dem neuen Wissen sollte es Ihnen möglich sein, das meiste aus diesem
|
|
Handbuch und die vielen Beispiel-Skripte in den Beispiel-Archiven zu
|
|
verstehen.
|
|
</para>
|
|
<para>
|
|
Wenn Sie an verschiedenen Präsentationen, die Ihnen zeigen, was PHP alles
|
|
tun kann, interessiert sind, dann besuchen Sie doch folgende Seite:
|
|
<link xlink:href="&url.php.talks;">&url.php.talks;</link>.
|
|
</para>
|
|
</section>
|
|
</chapter>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|