Please Sign In or Register

コメントのタイトルが長い場合に文字化けを起こす

コメントのタイトルが文字化けコメントに文字数の多いタイトルを使用した場合に、コメントタイトルが途中で切断され、末尾に ? 記号が表示されてしまうことがある。文字化けしていることで、ページ内で使用している文字コードを正しく認識できなくなってしまい、コメントのフィード配信でエラーが発生したり、ページが正しく表示されないなどの問題が発生する可能性も否定できない。

MySQL データベースのコメントタイトルの最大文字長を調整することで一応解決。


Comment モジュールにも maxlength を 64 に設定するような記述があるのですが、私の環境では、MySQL データベースに保存可能なコメントタイトルの最大長の設定を変更するだけで問題が解決できましたので、Comment モジュール側での設定がどのような動作をさせるための内容なのかよくわかっていません。

コメントのタイトルは、comments テーブルの subject フィールドに保存されるようになっているので、このフィールドのフィールドタイプの設定を VARCHAR(任意の値) に変更することでコメントタイトルの最大文字長がコントロールできるようです。
デフォルトでは VARCHAR(64) となっていますので、これをコンテンツタイトルと同等の文字数が使用できるように変更したい場合は VARCHAR(128) とします。

VARCHAR(n) の n には 1~255 までの文字数を設定できるようですが、この "文字数" というのは1バイト文字を使用した場合の文字数のことを示すらしく、日本語などのマルチバイト文字を利用している場合には "n = 文字数" ではなくなってしまうことに注意が必要のようです。

トラックバック

トラックバックは承認後に表示されます。

URLから "-nospam" を削除してトラックバックを送信してください。

返信

例えば「あ」と「お」の間の文字を入力してださい。なら、"いうえ"とひらがなで入力します。
このフィールドの内容は非公開にされ、公表されることはありません。
  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。
  • Allowed HTML tags: <a>
  • 行と段落は自動的に折り返されます。

書式オプションに関するさらに詳しい情報...