


PHPフォーム送信後、引用符の前にバックスラッシュが自動的に追加される理由と、PHPのマジッククォーテーションマークと送信後のスラッシュをオフにする3つの方法_PHPチュートリアル
PHPフォーム送信後に引用符の前にバックスラッシュが自動的に追加される理由と、送信後にPHPマジッククォーテーションマークとスラッシュをオフにする3つの方法
最近発見したのですが、PHPプログラムを作成してフォームデータを送信して書き込むときに一重引用符または二重引用符の内容を追加する場合、その後ろにバックスラッシュが追加されます。そして保存するたびにバックスラッシュが追加され、非常にイライラします。
そこでインターネットを検索したところ、インジェクションやオーバーフローを防ぐために、PHP プログラムは PHP コマンド magic_quotes_gpc を通じて二重引用符、一重引用符、バックスラッシュ、および NULL の前にバックスラッシュを自動的に追加することがわかりました。
デフォルトのPHPコマンドmagic_quotes_gpcはon、つまりオンになっています。この時点で、stripslashes() 関数を使用して、自動的に追加されたバックスラッシュを削除できます。使用法は次のとおりです。たとえば、文字列を含む変数が $str の場合、stripslashes() 関数を使用して文字列を処理します (stripslashes($str))。出力結果はバックスラッシュが削除されたものになります。
そこで、stripslashes() 関数を使用して、読み取った文字列の内容、つまり $value=stripslashes($str) を処理し、保存しました。
しかし、ローカルの PHP コマンド magic_quotes_gpc がオフになっているため、別の問題が発生します。この関数を使用すると、通常のバックスラッシュが削除されます。これは私たちが望んでいることではありません。
解決策は、関数 get_magic_quotes_gpc() を使用して検出することです。開いた状態の場合はバックスラッシュが削除され、閉じられた状態の場合はバックスラッシュは削除されません。
プログラムコードは次のとおりです:
リーリーこの問題を解決するには 3 つの方法があります:
方法 1: PHP 構成ファイル php.ini を変更する
この方法は、サーバーを管理する権限がある場合にのみ適しています。仮想空間を使用する場合は、最後の 2 つの方法のみを使用できます。
PHP 設定ファイル php.ini で、magic_quotes_gpc、magic_quotes_runtime、magic_quotes_sybase をすべてオフに設定します。以下に示すように:
magic_quotes_gpc = オフ
magic_quotes_runtime = オフ
magic_quotes_sybase = オフ
方法2: .htaccessファイルを利用する
このメソッドは、サーバーが htaccess をサポートしている場合にのみ機能します。htaccess は現在のサーバーで通常サポートされています
プログラム ディレクトリの .htaccess ファイルに次の文を追加します。
コードをコピーします コードは次のとおりです:
php_flag magic_quotes_gpc オフ
方法 3: コード内で
をブロックする
この方法は最も移植性が高く、PHP をサポートしている限り、サーバー構成を考慮する必要はありません。
すべての PHP ファイルの先頭に次のコードを追加します
上記の紹介は、PHP フォーム送信後に引用符の前にバックスラッシュが自動的に追加される理由と、この記事で紹介した PHP マジック クォーテーション マークを閉じる 3 つの方法です。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
