Heim >Backend-Entwicklung >PHP-Tutorial >Warum entkommen meine WordPress-POST-Daten auch nach der Deaktivierung von Magic Quotes?

Warum entkommen meine WordPress-POST-Daten auch nach der Deaktivierung von Magic Quotes?

DDD
DDDOriginal
2024-11-03 05:43:30322Durchsuche

Why Is My WordPress POST Data Escaping Even After Disabling Magic Quotes?

Magic Quotes-Rätsel in WordPress

Obwohl PHPs Magic Quotes deaktiviert wurden (überprüft durch get_magic_quotes_gpc(), das 0 zurückgibt), werden POST-Daten immer noch maskiert . Dieses Problem tritt auf, wenn WordPress in eine Multisite-Installation integriert wird.

Die Rolle von WordPress beim automatischen Escapen

Die Ursache des automatischen Escapens liegt in der Codebasis von WordPress. Ein Fehler (Ticket Nr. 18322) in WordPress versucht, Eingaben zu bereinigen, selbst wenn magische Anführungszeichen deaktiviert sind. Die Lösung besteht darin, Schrägstriche explizit manuell aus Eingabedaten zu entfernen, wie im Codex vorgeschlagen.

Schrägstriche gründlich entfernen

Um das Problem zu beheben, entfernen Sie tiefe Schrägstriche aus superglobal Arrays ($_GET, $_POST, $_COOKIE, $_SERVER und $_REQUEST) mit der Funktion stripeslashes_deep():

<code class="php">$_GET       = array_map('stripslashes_deep', $_GET);
$_POST      = array_map('stripslashes_deep', $_POST);
$_COOKIE    = array_map('stripslashes_deep', $_COOKIE);
$_SERVER    = array_map('stripslashes_deep', $_SERVER);
$_REQUEST   = array_map('stripslashes_deep', $_REQUEST);</code>

Alternativer Ansatz

Alternativ, Erwägen Sie die lokale Verwendung von array_map() für bestimmte Arrays, anstatt Superglobals zu überschreiben:

<code class="php">$post = array_map('stripslashes_deep', $_POST);</code>

Überlegungen

Das Ändern von Superglobals wie oben gezeigt kann Auswirkungen auf Ihre Anwendung haben. Wenn der spezifische Kontext dies zulässt, sollten Sie eine selektive Entfernung in Betracht ziehen, um die Datenintegrität aufrechtzuerhalten. Weitere Informationen finden Sie in den bereitgestellten Referenzen.

Das obige ist der detaillierte Inhalt vonWarum entkommen meine WordPress-POST-Daten auch nach der Deaktivierung von Magic Quotes?. 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