Heim >Backend-Entwicklung >PHP-Tutorial >Ausführliche Erklärung der PHP-Formulare

Ausführliche Erklärung der PHP-Formulare

WBOY
WBOYOriginal
2016-07-29 09:09:051908Durchsuche

Wenn es um die Webentwicklung geht, müssen wir HTML erwähnen, das seit mehreren Jahren der De-facto-Standard für die Gestaltung von Web-Benutzeroberflächen ist. Obwohl die derzeitige Verwendung von Seitenskripten wie WAP/XML es schwierig macht, die Dominanz von HTML aufrechtzuerhalten, müssen Entwickler, wenn Sie Front-End-PHP-Webanwendungen schreiben möchten, immer noch die HTML-Sprache verstehen, insbesondere den Formteil von HTML.
In diesem Kapitel lernen wir Folgendes:
? Verwenden Sie Dreamweaver zum Entwerfen von HTML-Formularen
? Verwenden Sie PHP zum Senden und Empfangen von Formulardaten
? 🎜>? Verwenden Sie PHP, um Benutzereingaben zu validieren
? Die beiden Sitzungsverwaltungsmethoden von PHP: COOKIE und SESSION
? Planen Sie unsere Webanwendung
HTML ist eine einfache Auszeichnungssprache, die den Benutzern große Flexibilität bietet. Dies erleichtert auch das Erlernen und Schreiben. Aus diesem Grund wird die Gestaltung von HTML fast missbraucht, was dazu führt, dass eine Seite sehr unterschiedlich angezeigt wird mehrere verschiedene Browser wie IE, Firefox und Mozila.
Das heutige Webdesign hat neue Standards ermöglicht, die darauf abzielen, dass der HTML-Code von Webseiten nur Inhalte und Informationen enthält und Informationen in Standard-HTML und CSS (Cascading Style Sheets) gespeichert werden, dem mittlerweile beliebten DIV+CSS-Designstandard.
Einige Leute schlagen vor, XML als Ersatz für die HTML-Sprache zu verwenden. Obwohl XML über solch leistungsstarke Funktionen verfügt, ist die Eintrittsbarriere hoch und entmutigend, und es gibt derzeit zu viele HTML-basierte Websites. Daher ist der aktuelle Standard die kompatible Spezifikation von HTML und XML, genannt XHTML, die für den Übergang von HTML verwendet wird zu XML. Der Code in diesem Buch basiert auf XHTML-Kompatibilität und es wird empfohlen, XHTML auch auf Webprojekte anzuwenden. Das Erstellen und Bearbeiten von Formularen ist ein wichtiger Kompetenzindikator für PHP-Entwickler. Als nächstes beginnen wir mit der Einführung in die Gestaltung des Formulars.
Formulare sind die am häufigsten verwendeten Komponenten in Webanwendungen und bestehen aus Senden-Schaltflächen und anderen zugehörigen Elementen. Formulare werden in verschiedenen Bereichen verwendet, um Funktionen wie die Registrierung von Benutzern, das Ausfüllen von Bankkonten und das Anmelden zu implementieren. Das
-Formular verwendet
als Start-Tag und endet mit
, andernfalls hat es keine Wirkung. Auf einer HTML-Seite sind mehrere Formulare zulässig. Beim Schreiben werden der Name und die Formular-ID des Formulars als Unterscheidung zwischen ihnen verwendet.
Das Folgende ist das einfachste Formular, der Code lautet wie folgt:




Dieses Formular Läuft im Browser. Es wird nur eine Schaltfläche mit der Aufschrift „Submit Query Content“ angezeigt, was wenig Sinn ergibt. Wenn Sie Daten übermitteln und ein vollständiges Formular erstellen möchten, müssen Sie dem
-Tag zwei wichtige Attribut-Tags hinzufügen: Aktion und Methode, wie im folgenden Formular gezeigt:

E-Mail:
< input type="submit" value="OK" name="btnSubmit">

Dabei bezieht sich das Aktions-Tag auf den Dateispeicherort, der das Verarbeitungsergebnis empfängt, wenn der Aktionswert vorliegt leer ist, dann an die aktuelle Datei selbst senden. Wenn der Wert der Aktion eine andere Datei oder URL ist, senden Sie ihn zur Verarbeitung an diese Datei oder URL-Adresse. Das
method-Tag beschreibt die Methode, die beim Senden von Daten verwendet wird. Es hat zwei Werte: GET und POST. Wenn das Methodenattribut nicht festgelegt ist oder das Attribut leer ist, verwendet der Browser standardmäßig die POST-Methode.
Hier erfahren Sie, wie Sie mit dem POST-Formular umgehen.
Beispiel 5-1: getPasswd.php – Per POST-Formular übermittelte Werte akzeptieren
$action = $_SERVER['PHP_SELF']; REQUEST_METHOD' ] == 'POST') {
echo 'POST-Methode zum Übergeben von Formularwerten verwenden';
echo "$_POST[email]";
}
?> ;form name = „regform“ id = „regform“ action = „“ method = „post“>
E-Mail:


Wenn Sie senden möchten Es im Browser Das Formular oder die Daten können mit der GET- oder POST-Methode an den Server gesendet werden. Die GET-Methode verwendet die Adressleiste des Browsers, um den Wert beim Zugriff auf die URL zu übergeben. Wir können diese Art von URL-Zeichenfolge auf vielen Websites sehen. In Abbildung 5-1 wird die Verwendung der GET-Methode zum Übergeben von Parametern gezeigt.

                                                                                   Es ist fehleranfällig, wenn nicht d gut genug, und die von GET übergebenen Zeichen Die Länge der Zeichenfolge darf 250 Zeichen nicht überschreiten. Wenn sie zu lang ist, schneidet der Browser sie automatisch ab, was zu Datenverlust führt. Darüber hinaus unterstützt die GET-Methode keine anderen Zeichen als ASCII-Zeichen. Wenn sie beispielsweise chinesische Zeichen oder andere Nicht-ASCII-Zeichen enthält, sind zusätzliche Codierungsvorgänge erforderlich, obwohl der Browser sie manchmal automatisch abschließen kann (Sie können die verwenden). url_encode- und url_decode-Funktionen verwenden (siehe Abschnitt 2.9.2 für Einzelheiten zur Methode).
Wenn die POST-Methode variable Daten sendet, sind sie für den Benutzer undurchsichtig. Gemäß dem HTTP-Protokoll werden die Daten an die Header-Informationen angehängt und der Benutzer kann sie nicht nach Belieben ändern. und die Verwendung von POST kann große Datenmengen an den Webserver senden.
Da POST zusammen mit HTTP-Header-Informationen gesendet wird, sendet der Browser die POST-Daten nicht automatisch erneut, wenn die Übermittlung des POST-Formulars ausgelöst wird und der Benutzer beim Durchsuchen der Seite auf die Schaltfläche „Zurück“ klickt. Wenn der Benutzer zu diesem Zeitpunkt auf die Schaltfläche „Aktualisieren“ klickt, erscheint die Meldung „Die Daten sind abgelaufen. Möchten Sie das Formular erneut senden?“ Dies ist nicht so praktisch wie GET. Wenn GET zum Übergeben von Werten verwendet wird, ist die URL-Adresse des Browsers weiterhin vorhanden, auch wenn der Benutzer die Schaltfläche „Zurück“ oder „Aktualisieren“ verwendet.
Daher müssen wir während der Entwicklung flexibel GET und POST auswählen, um Formulardaten entsprechend der tatsächlichen Anwendung zu übermitteln.
Es ist erwähnenswert, dass das gesamte Formular keine Übermittlungsaktion auslöst, wenn das schließende Tag des Formulars im HTML fehlt. Während der tatsächlichen Entwicklung werden einige unvorsichtige Personen feststellen, dass beim Klicken auf die Schaltfläche nichts passiert. Überprüfen Sie einfach den Formularcode sorgfältig. Manchmal erledigt der Browser die Arbeit nicht für uns.
5.4 Formularelemente
In Formularen werden mehr als ein Dutzend Tag-Elemente verwendet. Die häufig verwendeten und wichtigen Tags in der PHP-Entwicklung sind in Tabelle 5-1 aufgeführt.
Tabelle 5-1
Beschreibung des Formularelements Beschreibung
Eingabetyp="Kontrollkästchen"-Kontrollkästchen, mit dem Benutzer mehrere Optionen auswählen können
Eingabetyp="Datei"-Feld zum Durchsuchen von Dateien, wenn eine Datei hochgeladen werden kann Wird verwendet, um ein modales Fenster zum Auswählen einer Datei zu öffnen
Eingabetyp="versteckt" verstecktes Tag, das zum impliziten Senden von Variablenwerten in der Form verwendet wird
Eingabetyp="Passwort" Passwort-Textfeld, das Wenn der Benutzer Zeichen in dieses Textfeld eingibt, werden diese durch die Einzeloption *
input type="radio" ersetzt und angezeigt, mit der eine Reihe von Auswahlmöglichkeiten festgelegt werden können.
Eingabetyp = „Zurücksetzen“ löschen und zurücksetzen Legen Sie den Formularinhalt fest, der verwendet wird, um den Inhalt aller Textfelder im Formular zu löschen und die Auswahlmenüelemente auf ihre Anfangswerte zurückzusetzen
Eingabetyp = „Senden“ Schaltfläche zum Senden des Formulars
Einzelzeilen-Textfeld „Eingabetyp = „Text““
Wählen Sie ein Dropdown-Listenfeld aus, das einzeln oder mehrfach ausgewählt werden kann. Die Standardeinstellung ist Einzelauswahl. Wenn Sie eine Mehrfachauswahlfunktion hinzufügen möchten, fügen Sie
wobei das versteckte Tag als verstecktes oder implizites Tag bezeichnet wird. Es erscheint nicht auf der Seitenoberfläche, die der Benutzer durchsucht, wenn er das Informationsformular ausfüllt und Werte über Seiten hinweg übergibt. Mit diesem Tag können einige versteckte Werte übergeben werden.
Das Passwort-Textfeld wird verwendet, um das Passwort auszublenden. Der vom Benutzer eingegebene Text wird im Textfeld mit * angezeigt, das Passwort ist jedoch nicht verschlüsselt und wird nur durch * ersetzt.
Die Attribute des Formulars werden unten vorgestellt. Sie werden verwendet, um das Verhalten oder die Anzeige von Formularelementen im Formular einzuschränken. Ihre Bedeutung und Einschränkungen sind in Tabelle 5-2 aufgeführt.
Tabelle 5-2
Attributname-Beschreibung Gibt den Namen des
Name-Textfelds an. Basierend auf diesem Namen erstellt PHP einen Schlüssel mit dem Namen name im Super-Global-Array. Die Breite der
Größe Textfeld: Im Auswahl-Dropdown-Menü wird die Anzahl der sichtbaren Optionszeilen angezeigt.
Der Standardwert im Werttextfeld. Beachten Sie, dass dieser Wert nicht auf das Textfeld „type=password“ und „Passwort“ angewendet werden kann type=file file text box
multiple Dieses Attribut wird im Dropdown-Listenmenü verwendet. Durch Angabe dieser Option können Benutzer die Strg- und Umschalttasten verwenden, um mehrere Zeilen auszuwählen.
Zeilen Die Anzahl der Zeichen und Spalten die untergebracht werden können, wenn das mehrzeilige Textfeld angezeigt wird. Breite
Spalten. Wenn das mehrzeilige Textfeld angezeigt wird. Die Anzahl der Zeichenzeilen, die untergebracht werden können, und die Höhe
. Zusätzlich zum oben genannten erforderlichen Attribut Für Elemente gibt es auch einige Standardattribute wie Klasse, Stil, ID usw. Sie können auf HTML-bezogene Informationen verweisen.
In einigen dynamischen Skripten muss PHP verwendet werden, um Formularelemente aus der Datenbank entsprechend unterschiedlicher Anforderungen zu generieren. Nachfolgend zeigen wir verschiedene Methoden zum Generieren von Formularschaltflächen oder -optionen.
1. Generieren Sie dynamisch eine Reihe von Optionsfeldern.
$options = array("010" => "Beijing",
"020" => "Shanghai",
"024" => "Shenyang" ,
„0411“ => „Dalian“);
$default = „024“;
$html = generic_radio_group("city_id", $options, $default);
echo $html ;
function generic_radio_group($name, $options, $default="") {
$name = htmlentities($name);
foreach($options as $value => $label) {
$value = htmlentities($value);
$html .= " if ($value == $default){
$html .= " ÜBERPRÜFT ";
}
$html .= "NAME="$name" VALUE="$value">";
$html .= $label . "
";
}
return($html);
}
?>
Dieses Skript generiert eine Liste von Optionsfeldgruppen mit dem Namen „city_id“. Die Standardoption ist 024-„Shenyang“.
2. Generieren Sie dynamisch Dropdown-Listenmenüs mit mehreren Optionen.
function generic_checkboxes($name,$options, $default=array()) {
if (!is_array($default)){
$default = array();
}
foreach($options as $value => $label) {
$html .= " if (in_array($value, $default) ){
$html .= "checked ";
}
$html .= "name="{$name}[]" value="$value">";
$html .= $label . "
";
}
return($html);
}
$interests = array("Music" => "Music",
„Film“ => „Film“,
„Internet“ => „Internet“,
„Reise“ => Optionen, $interests);
?>
Wählen Sie Ihre Interessen aus:



3. Generieren Sie ein Dropdown-Listenmenü mit Mehrfachauswahl.
$options = array(
'1' => 'Bitte auswählen',
'news' => 'News',
'events' => ; 'Events',
'publications' => 'Manuscript'
);
$default = "news"; //Standardmäßig ausgewählte Elemente
$html =generate_muilti_option("select" , $ options, $default);
echo $html;
function generic_muilti_option ($name,$options, $default){
//Eine Liste erstellen, die mehrere Auswahlmöglichkeiten zulässt
echo '< ;select name ="'.$name.'[]" id="'.$name.'[]" multiple="multiple">';
foreach( $options as $value => $option ) {
echo '