suchen
HeimPHP-BibliothekenDatenvalidierungsbibliothekPHP-Parameterfilterung, Datenfilterklasse
PHP-Parameterfilterung, Datenfilterklasse

Einführung in die PHP-Parameterfilterung und PHP-Datenfilterung für alle, einschließlich der Grundprinzipien der PHP-Filterung übermittelter Daten und der einfachen PHP-Datenfilterung

Grundprinzipien der PHP-Einreichungsdatenfilterung

1) Beim Senden von Variablen an die Datenbank müssen wir addslashes() zum Filtern verwenden. Unser Injektionsproblem kann beispielsweise mit nur einem addslashes() gelöst werden. Wenn es um Variablenwerte geht, ist die Funktion intval() tatsächlich auch eine gute Wahl zum Filtern von Zeichenfolgen.
2) Aktivieren Sie magic_quotes_gpc und magic_quotes_runtime in php.ini. magic_quotes_gpc kann die Anführungszeichen in get, post und cookie in Schrägstriche umwandeln. magic_quotes_runtime kann eine Formatierungsrolle für die Eingabe und Ausgabe von Daten in die Datenbank spielen. Tatsächlich erfreut sich dieser Parameter seit den alten Zeiten, als Injektionen verrückt waren, großer Beliebtheit.
3) Wenn Sie Systemfunktionen verwenden, müssen Sie zum Filtern die Parameter escapeshellarg() und escapeshellcmd() verwenden, damit Sie Systemfunktionen sicher verwenden können.
4) Für Cross-Site sind beide Parameter von strip_tags() und htmlspecialchars() gut. Alle von Benutzern übermittelten Tags mit HTML und PHP werden konvertiert. Beispielsweise werden spitze Klammern „<“ in harmlose Zeichen wie „<“ umgewandelt.
$new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
strip_tags($text,);
5) Zum Filtern verwandter Funktionen, genau wie beim vorherigen include(), unlink, fopen() usw., solange Sie die Variablen angeben, mit denen Sie die Operation ausführen möchten, oder die zugehörigen Zeichen streng filtern



Haftungsausschluss

Alle Ressourcen auf dieser Website werden von Internetnutzern bereitgestellt oder von großen Download-Sites nachgedruckt. Bitte überprüfen Sie selbst die Integrität der Software! Alle Ressourcen auf dieser Website dienen nur als Referenz zum Lernen. Bitte nutzen Sie diese nicht für kommerzielle Zwecke. Andernfalls sind Sie für alle Folgen verantwortlich! Wenn ein Verstoß vorliegt, kontaktieren Sie uns bitte, um ihn zu löschen. Kontaktinformationen: admin@php.cn

Verwandter Artikel

PydanticAI: Ein umfassender Leitfaden zum Erstellen produktionsbereiter KI-AnwendungenPydanticAI: Ein umfassender Leitfaden zum Erstellen produktionsbereiter KI-Anwendungen

30Dec2024

PydanticAI ist ein leistungsstarkes Python-Framework, das die Entwicklung produktionstauglicher Anwendungen mithilfe generativer KI rationalisieren soll. Es wurde von demselben Team entwickelt, das hinter Pydantic, einer weit verbreiteten Datenvalidierungsbibliothek, steht, und zielt darauf ab, Innovationen voranzutreiben

Wie finde ich Autos, die alle aufgeführten Tests bestanden haben?Wie finde ich Autos, die alle aufgeführten Tests bestanden haben?

14Jan2025

Suchen von Autos, die alle Tests in einer Liste bestanden haben. Die vorliegende Aufgabe besteht darin, Autos aus einer „Autos“-Tabelle zu identifizieren, die alle Tests erfolgreich bestanden haben ...

Wie verwalten „Yield' und „Await' den Kontrollfluss und den Status in asynchronen .NET-Vorgängen?Wie verwalten „Yield' und „Await' den Kontrollfluss und den Status in asynchronen .NET-Vorgängen?

14Jan2025

Den Kontrollfluss in .NET mit Yield und Await verstehen: Yield und Await, eingeführt in .NET, bieten syntaktischen Zucker für die Steuerungsverwaltung ...

Wie lege ich benutzerdefinierte Namen für Enum-Werte in System.Text.Json fest?Wie lege ich benutzerdefinierte Namen für Enum-Werte in System.Text.Json fest?

14Jan2025

System.Text.Json: Wie gebe ich einen benutzerdefinierten Namen für einen Enumerationswert an? Diese Funktion ist in .NET Core 3.0, .NET 5, .NET ... nicht sofort verfügbar.

Warum kann ich in nachfolgenden SELECT-Ausdrücken keine Spaltenaliase verwenden und wie kann ich das Problem beheben?Warum kann ich in nachfolgenden SELECT-Ausdrücken keine Spaltenaliase verwenden und wie kann ich das Problem beheben?

14Jan2025

Spaltenaliase und SELECT-AusdrückeIn SQL werden Spaltenaliase verwendet, um temporäre Namen für Ergebnisspalten bereitzustellen und so deren Referenzierung zu ermöglichen ...

Wie finde ich in einer Datenbank Autos, die alle Tests (A, B, C, D) bestanden haben?Wie finde ich in einer Datenbank Autos, die alle Tests (A, B, C, D) bestanden haben?

14Jan2025

Wählen Sie eine Gruppe von Zeilen aus, die allen Elementen in einer Liste entsprechen. Betrachten Sie zwei Tabellen:cars: Listet Autos mit ihren entsprechenden Modellnummern auf.passedtest: Zeichnet auf...

See all articles