0

私のウェブサイトにはコメント欄があります。これらのコメントは、MySQL データベースの「text」データ型および latin1_swedish_ci 照合を持つフィールドに保存されます。コメントを表示するためにクエリの結果をエコーすると、文字 U+0008 (バックスペース) が Firefox、Opera、およびその他のブラウザーで表示されます。Chrome はこれを無視し、空白のみを表示します。このキャラクターを削除する方法はありますか?

編集: ウェブサイトには 2 つのセクションがあります。1 つは私が通知を投稿するセクション、もう 1 つはユーザーがコメントを投稿するセクションです。コンテンツを含む「メッセージ」フィールドは、同じように構成され、エコーされます。私が言ったように、サイト経由でコメントを投稿するか、直接のクエリを介してコメントを投稿するかに違いはありません. 驚くべきことに、末尾に -tag があるコメントには、U+0008 文字が追加されていません。

4

2 に答える 2

0

MySQL の照合をlatin1_swedish_ciから unicode に変更して試してください。入力中のデータはユニコードでエンコードされている可能性がありますが、DB に格納されている間はエンコードが失われ、ユニコード文字列にバックスペースが表示されます。ただし、@WebnetMobile.com が提案したように、それがどこから来たのかを調べる必要があります。

于 2012-09-07T17:50:55.407 に答える
0

関数内のスペースを置き換えましたecho。これで明らかに問題が解決しました。どうすれば直るかわかりませんが、U+0008キャラクターがすべて消えてしまいました...

于 2012-09-07T18:31:35.923 に答える