Einführung in die Programmierung mit PHP

Formulare

Es gibt 2 Methoden, wie man Formulardaten an den Server übermitteln kann:

Formularübermittlung per GET

<form action="http://localhost/willkommen.php" method="get">

Übermittlung der Daten
GET hängt die Formulardaten an die URL an, bevor die Anfrage an den Server geschickt wird, z.B.:

http://localhost/willkommen.php?nickname=Christian.

Angeben wird das im Formular mit dem Parameter method:

Anhängen an die URL
Hinter dem ? am Ende der URL wird der Variablenname angegeben. Werden mehrere Variable verwendet, so sind diese durch ein & getrennt, z.B:

http://localhost/willkommen.php?nickname=Christian&user_id=123

Das Array $_GET
PHP erzeugt automatisch ein Array, $_GET, das alle Werte enthält, die in der URL übergeben werden. Über den Namen kann man auf den Wert zugreifen (assoziatives Array):

$nick = $_GET[ "nickname" ];
echo "Hallo ".$nick."!

Es wird die Variable und der Wert an die URL angehängt (siehe URL).
Nachteil: Jeder sieht die Variablen und deren Inhalte in der URL und kann diese auch anpassen.

Nickname

Formularübermittlung per POST

<form action="http://localhost/willkommen.php" method="post">

Beispiel: Benutzername und Passwort
Passwörter dürfen nicht in der URL für jeden sichtbar sein.
Deshalb werden diese Formulardaten mit POST übermittelt.

Das Array $_POST
PHP erzeugt automatisch ein Array, $_POST, das alle Werte enthält, die per POST werden. Über den Namen kann man auf den Wert zugreifen (assoziatives Array):

$nick = $_POST[ "user" ];
echo "Hallo ".$user."!

Die Variablen werden "unsichtbar" übergeben. In PHP kann man auf die Werte reagieren, ohne dass jeder sieht, welche Werte und Variablen verwendet werden.


Richtiger Benutzer: Hans
Richtiges Passwort: Hinterseer

Benutzername
Passwort

Erstelle ein Kontaktformular, das die einzelnen Felder auf die Syntax hin überprüft:

Bereits richtige Eingaben sollen bei der Formularübermittlung erhalten bleiben.
Falsche Eingaben sollen gekennzeichnet werden.

Wichtige Stringfunktionen:

int strlen ( string $string )

int strcmp( string $string1, string $string2)

int strpos ( string $haystack, mixed $needle [, int $offset] )
Mit strpos() kann man innerhalb einer Zeichenkette (haystack) das erste Vorkommen eines Zeichens (needle) oder einer Zeichenkette (needle) suchen. Als Rückgabewert der Funktion erhält man die Position des Suchtreffers entspricht, sonst wird false zurückgegeben. Mit dem optionalen Parameter offset bestimmt man die Startposition, ab der gesucht werden soll.

string strstr ( string $haystack, string $needle )
Mit strstr() kann man innerhalb einer Zeichenkette (haystack) das erste Vorkommen eines Strings (needle) suchen. Im Erfolgsfall gibt diese Funktion die Zeichenkette ab der Position des Suchtreffers bis zum Ende zurück, sonst false.

$woerter = explode( " ", "Angie Brad");
Zerlegt einen String mit dem angegebenen Trennzeichen in ein Array mit Teilstrings.

$wort = implode( " ", "$woerter");
Macht aus einem Array mit Teilstrings einen String.

$wort = str_replace( "+", "*", "A+B+C");
Ersetzt im String alle + durch *.


Vorname
Nachname
E-Mail:Die E-Mailadresse muß gültig sein.
Telefonnummer:Die Telefonnummer muß gültig sein.

Formatiere das Formular mittels CSS