昨日、Haoduanduan Web サイトにアップロードされた画像が突然表示されなくなり、バックエンドで ckeditor を使用することができなくなりました。その後、最初はエディターに問題があるのではないかと考え、エディターを変更してみましたが、明らかにエディターの問題は解決されませんでした。だから問題は何ですか?
エディターの入力内容のソースコード解析から、内容には引用符やHTMLタグが含まれていますが、送信時にckeditorが「<」などの定義済み文字をHTMLエンティティに変換し、保存後の内容は変換後に具現化されました。
データベースの結果をクエリすると、コンテンツ内の引用符が置き換えられて空白になっていることがわかりました。ただし、出力データはエディターで解釈できますが、スタイルが乱れており、他のタグが追加されています。 。これらがフロントエンドのスタイルを乱し、アップロードした画像を表示したり中央に配置したりできない原因となります。
原因がわかったので、次のステップは解決策を考え出すことです。
このとき、php設定ファイルのmagic_quotes_gpcパラメータを思い出しました。案の定、このパラメータはオフ状態です。有効にすると、GET、POST、COOKIE を介して渡されたデータは自動的にエスケープされます。
magic_quotes_gpc=Off; の場合、文字には引用符 (一重引用符か二重引用符に関係なく) が含まれている必要があり、mysql に直接書き込むと直接空白になります。
明らかにこの問題が原因であるため、このパラメータ magic_quotes_gpc=On をオンにします。データベースに挿入されたデータは通常どおり表示され、引用符は (バックスラッシュ) に置き換えられます。
データを取得する際に $contents = preg_replace("/\\/",'"',$contents); で置き換えるとエディタ上で正常に表示されるようになります
この問題は解決しました。データ エスケープ パラメーターの使用については、この記事の後半で説明します。
原文: http://www.francissoung.com/biancheng/178.html
以上、Ckeditorエディターでアップロードした画像が中央に配置できず、スタイルが乱れてしまう問題の解決方法を、関連内容も含めて紹介しましたので、PHPチュートリアルに興味のある友人の参考になれば幸いです。