PHP Filter - Wie validiere ich Benutzereingaben mit verschiedenen Filtern? - Beispiele

Inhaltsverzeichnis:

Anonim

Einführung in PHP-Filter

Es gibt nur sehr wenige Sprachen mit Filterfunktionen. Filter sind eine der Mehrwertfunktionen von Programmiersprachen. Dies hilft uns, die Daten oder die Zeichenfolge vor der Verarbeitung zu filtern. Dies ist der Aufruf der Zeit, um einige Schwachstellen im System zu vermeiden. PHP-Filter können zur Validierung oder Bereinigung der externen Eingaben verwendet werden. Grundsätzlich ist der PHP-Filter eine Erweiterung, die die verschiedenen Funktionen und Funktionen enthält, die wir beim Codieren verwenden können. Zum Beispiel nehmen wir Client-Eingaben aus einem Formular als E-Mail-ID, die wir vor dem datenbankbezogenen Vorgang validieren oder bereinigen sollten. Wir als Programmierer oder Entwickler sollten diese Filter in PHP gemäß unseren Geschäftsanforderungen und den Anforderungen verwenden.

Syntax

Bereinigung und Filter sind die häufigsten Vorgänge in der Webanwendungsumgebung. Hier ist die grundlegende Syntax:

filter_var(variable, filter, options)

Diese Funktion filter_var akzeptiert 3 Parameter. Die letzten 2 Parameter, der Filter und die Optionen sind optional. Die erste ist eine Variable oder der Bezeichner selbst. Dies ist die eine, die wir filtern möchten, die zweite ist das, was wir tun möchten (dabei übergeben wir im Grunde die ID der verfügbaren Optionen in PHP), und die letzte ist die filterbezogene Option. Lassen Sie uns dasselbe anhand eines Quizbeispiels verstehen:

<_?php
$int_val = 200;
if(filter_var($int_val, FILTER_VALIDATE_INT))(
echo "The $int_val is a valid one."; // valid
) else(
echo "The $int_val not a valid input as an integer"; // invalid
)
?>

Im obigen Beispiel verwenden wir einen Filter und prüfen, ob die Variable $ int_val einen ganzzahligen Wert enthält oder nicht. Also, hier ist die Ausgabe für das gleiche.

Ausgabe:

Warum verwenden wir Filter in PHP?

Viele PHP-Webanwendungen erhalten externe Eingaben vom Client. Die Idee dahinter ist, die Benutzereingaben vor der Verarbeitung zu bereinigen, da wir nicht erwarten können, dass der Benutzer alle Daten korrekt eingibt. Externe Benutzer- oder Systemeingaben oder -daten können zu kritischen Sicherheitsproblemen führen.

Wir können hier filtern, um die von den verschiedenen externen Quellen eingegebenen Daten zu bereinigen:

  • Direkte Client-Benutzereingabe über das Formular
  • Daten von Cookies
  • Daten von den Webdiensten
  • Daten der Servervariablen
  • Datenbankabfrageergebnisse

PHP-Filter und die Desinfektionsprogramme ermöglichen es uns, festzustellen, ob eine Eingabe gültig ist oder nicht. Wenn dies keine gültige Eingabe ist, können wir dies bereinigen, um eine gültige Eingabe zu erhalten. Im folgenden Beispielteil werden wir verschiedene Beispiele dazu vorstellen.

Beispiel eines Filters

Es gibt verschiedene Arten von Filtern in PHP. Wir können diese Liste mit der Funktion filter_list () überprüfen. Grundsätzlich können diese Filterfunktionen zum Filtern von URL, Zeichenfolge, Nummer, IP-Adresse usw. verwendet werden.

Beispiel 1

In diesem Abschnitt werden die verschiedenen Filterbeispielprogramme nacheinander angezeigt.

Einen String desinfizieren

Um zu überprüfen, ob eine Zeichenfolge gültig ist oder nicht

<_?php
$comment = "Hello word";
if(filter_var($comment, FILTER_SANITIZE_STRING))(
echo "The $comment is a valid one."; // valid
) else(
echo "The $comment not a valid input"; // invalid
)
?>

Im obigen Beispiel sehen wir eine gültige Zeichenkette, deshalb gibt es die gültige.

Ausgabe:

Holen Sie sich die bereinigte Zeichenfolge als Ausgabe

<_?php
$comment = " Hello word ";
echo "Before sanitizing: ". $comment;
$comment = filter_var($comment, FILTER_SANITIZE_STRING);
echo "
"; // for new line
echo "After sanitizing: ". $comment;
?>

Wir können sehen, dass wir zwei verschiedene Ausgänge haben. Wir können die Ausgabe vor dem Desinfizieren und nach dem Desinfizieren sehen. Nach der Bereinigung wurden HTML-Tags von der PHP-Filterfunktion entfernt.

Ausgabe:

Beispiel # 2

Überprüfen Sie eine IP-Adresse

PHP-Filter-Funktion kann diesen Job für uns erledigen. Schauen wir uns das Beispiel an.

<_?php
$ip_address = "172.16.254.1:40";
if(filter_var($ip_address, FILTER_VALIDATE_IP))(
echo "The $ip_address is a valid one."; // valid
) else(
echo "The $ip_address is not a valid input"; // invalid
)
?>

Ausgabe:

Beispiel # 3

E-Mail-Adresse bereinigen und validieren

<_?php
$email_address = " @testmail.com";
code>
echo "Before Sanitizing: " . $email_address ."
";
if(filter_var($email_address, FILTER_VALIDATE_EMAIL))(
echo "The $email_address is a valid one."; // valid
) else(
echo "The $email_address not a valid input"; // invalid
)
echo "
";
echo "After Sanitizing: " . filter_var($email_address, FILTER_SANITIZE_EMAIL);
?>

Im obigen Beispiel haben wir einen ungültigen Wert für die E-Mail-ID, da wir diese Ausgabe mithilfe der Filterfunktion erhalten. Aber in dem Moment, in dem wir es bereinigen, wird die richtige E-Mail angezeigt.

Ausgabe:

<_?php
$email_address = " ";
if(filter_var($email_address, FILTER_VALIDATE_EMAIL))(
echo "The $email_address is a valid one."; // valid
) else(
echo "The $email_address not a valid input"; // invalid
)
?>

Im obigen Beispiel-PHP-Code prüfen wir, ob die E-Mail gültig ist oder nicht.

Ausgabe:

Beispiel # 4

URL bereinigen und validieren

In diesem Beispiel sehen wir, ob eine Eingabe-URL gültig ist oder nicht. Wenn keine gültige URL vorhanden ist, wird diese bereinigt, um die Richtigkeit zu gewährleisten.

<_?php
$URL = "https://www.educba.com/ courses ";
echo "Before Sanitizing: " . $URL ."
";
if(filter_var($URL, FILTER_VALIDATE_URL))(
echo "The $URL is a valid one."; // valid
) else(
echo "The $URL is not a valid input"; // invalid
)
echo "
";
echo "After Sanitizing: " . filter_var($URL, FILTER_SANITIZE_URL);
?>

Ausgabe:

Fazit

Wir sollten den PHP-Filter verwenden, um die Benutzereingaben zu validieren oder zu bereinigen. Auf diese Weise können wir die anfälligen Benutzereingaben einschränken. Wir können die verschiedenen PHP-Filterfunktionen verwenden, um die Benutzereingaben und den Wert zu validieren. Wir können auch eine Desinfektion durchführen, um den Wert (entweder die Benutzereingabe oder den direkt zugewiesenen) zu bereinigen. Wir sollten immer den PHP-Sanitizer verwenden, bevor wir Cookies-Daten für die Datenverarbeitung verwenden.

Empfohlene Artikel

Dies war eine Anleitung zu PHP-Filtern. Hier diskutieren wir auch die Syntax, warum wir einen Filter in PHP verwenden und Beispiele. Weitere Informationen finden Sie auch in den folgenden Artikeln.

  1. PHP Frameworks
  2. Tableau-Kontextfilter
  3. Was ist Angular 2?
  4. Mantis Bug Tracker
  5. Wie funktionieren Cookies in JavaScript mit Example?