Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann das Problem „Schrägstrich vor jedem Zitat“ in PHP behoben werden?

Wie kann das Problem „Schrägstrich vor jedem Zitat“ in PHP behoben werden?

Susan Sarandon
Susan SarandonOriginal
2024-10-21 11:30:29301Durchsuche

How to Address the

Verstehen des Problems „Schrägstrich vor jedem Anführungszeichen“

Unter bestimmten Umständen kann bei PHP-Webseiten ein Problem auftreten, bei dem die Übermittlung von Formulardaten zum Hinzufügen eines führt Backslash vor jedem doppelten Anführungszeichen. Dieses Problem entsteht durch eine Serverkonfigurationsfunktion, die als magische Anführungszeichen bekannt ist.

Wenn magische Anführungszeichen aktiviert sind, maskiert PHP automatisch bestimmte Zeichen, einschließlich doppelter Anführungszeichen, wenn sie an die Datenbank oder Formularübermittlungen gesendet oder von dieser empfangen werden. Dies kann zwar SQL-Injection-Angriffe verhindern, indem böswillige Anführungszeichen umgangen werden, kann aber auch die normale Formularverarbeitung beeinträchtigen.

Problem lösen

Um das Problem zu beheben, können Sie Folgendes verwenden: die Funktion „stripslashes()“, um die automatisch hinzugefügten Backslashes zu entfernen, bevor die Formulardaten in der Datenbank gespeichert oder auf der Seite angezeigt werden. Hier ist ein Beispiel:

<code class="php">if (get_magic_quotes_gpc()) {
    $input = stripslashes($input);
}</code>

Diese bedingte Anweisung prüft, ob magische Anführungszeichen aktiviert sind und entfernt, wenn ja, die Backslashes aus der $input-Variablen mithilfe von stripeslashes(). Dadurch können Sie die Formulardaten ohne zusätzliche Änderungen normal verarbeiten.

Erklärung zu Magic Quotes

Magic Quotes sind eine veraltete Funktion und sollten in modernem PHP als unsicher angesehen werden Entwicklung. Sie wurden in PHP 4 eingeführt und in PHP 7.0.0 entfernt, da sie verschiedene Sicherheits- und Codekompatibilitätsprobleme mit sich brachten.

Das Deaktivieren von magischen Anführungszeichen wird allgemein empfohlen, da es transparentere und sicherere Codierungspraktiken ermöglicht. Sie können magische Anführungszeichen deaktivieren, indem Sie Ihre PHP-Konfigurationsdatei ändern und magic_quotes_gpc auf „Aus“ setzen.

Wenn Sie die Funktion von magischen Anführungszeichen verstehen und Stripslashes() verwenden, um dieses „Schrägstrich vor jedem Anführungszeichen“-Problem zu lösen, können Sie es effektiv lösen Formulardaten in PHP und stellen die beabsichtigte Funktionalität sicher, auch wenn magische Anführungszeichen aktiviert sind.

Das obige ist der detaillierte Inhalt vonWie kann das Problem „Schrägstrich vor jedem Zitat“ in PHP behoben werden?. 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