あなたの文字セットを使用したデータベースへのページリクエストが UTF-8 に設定されていて、データベースへのリクエストの応答が ISO-8859-2/LATIN1 である場合、これによりオープニングが発生するという質問を明確にしたいと思います。 SQLインジェクションの場合、これはどうですか?
例:
search.php ---- html ヘッダーでエンコーディングを宣言 (Content-Type: text / html; charset = utf-8)
MySQL データベースでリクエストを作成します (サーバー文字セット: Latin1 (ISO-8859-1))
search.php? id = ブラブラブラ
答え:
search_results.php --- html ヘッダーでエンコーディングを宣言 (Content-Type: text / html; charset = utf-8)
MySQL データベースのエンコーディングは、結果を表示するページである search_results.php とは異なることに注意してください。優先されるのはデータベースですよね? これにより、特定の文字が ISO-8859-1 から UTF-8 に、また例として他のエンコーディングに異なる可能性があるため、SQL インジェクションにギャップが生じます。