Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich mithilfe von PHP-vorbereiteten Anweisungen und URL-Parametern Daten sicher von MySQL abrufen?

Wie kann ich mithilfe von PHP-vorbereiteten Anweisungen und URL-Parametern Daten sicher von MySQL abrufen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-21 12:17:10538Durchsuche

How Can I Securely Fetch Data from MySQL Using PHP Prepared Statements and URL Parameters?

Erstellen sicherer vorbereiteter MySQL-Anweisungen in PHP

Die Absicherung von MySQL-Abfragen gegen böswillige Eingaben ist für die Aufrechterhaltung der Datenintegrität und die Verhinderung von SQL-Injection-Angriffen von entscheidender Bedeutung. Vorbereitete Anweisungen bieten einen wirksamen Mechanismus, um dies zu erreichen, indem sie eingehende Benutzereingaben bereinigen.

In Ihrem speziellen Fall möchten Sie Spalten aus einer Tabelle abrufen, indem Sie Informationen verwenden, die aus URL-Parametern abgeleitet werden. Um diese Abfrage abzusichern, können wir vorbereitete Anweisungen wie folgt verwenden:

$db = new mysqli("host","user","pw","database");
$stmt = $db->prepare("SELECT * FROM mytable WHERE userid=? AND category=? ORDER BY id DESC");
$stmt->bind_param('ii', intval($_GET['userid']), intval($_GET['category']));
$stmt->execute();

Diese Anweisung bewirkt Folgendes:

  • Bereitet eine parametrisierte SQL-Abfrage.
  • Bindet Die GET-Parameter werden in sichere Ganzzahlen umgewandelt, wodurch eine SQL-Injection verhindert wird.
  • Führt aus -Anweisung.

Was die möglichen Geschwindigkeitssteigerungen betrifft, verbessern vorbereitete Anweisungen im Allgemeinen die Leistung in Szenarien mit sich wiederholenden Abfragen. Bei gelegentlicher Nutzung auf einer einzelnen Seite können die Auswirkungen jedoch vernachlässigbar sein.

Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von PHP-vorbereiteten Anweisungen und URL-Parametern Daten sicher von MySQL abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn