Posted by bzj00220 on September 20, 2012 at 1:55am
プライベートメッセージには文字数制限はあるのでしょうか?
私の運営しているサイトの会員様から質問を頂いたのですが
わかる方がいらっしゃいましたら教えて下さい。
その会員はプライベートメッセージを書いている途中に消えてしまったそうです。
なにしろその時の状況はその会員様しかわからないので
必ずしも文字数のせいとは言えないのですが・・・
「文字数制限があるならフォームのところに書いて下さい」と言われています。
一応、ブラウザの翻訳機能を使いながらドキュメントを読んだのですが
http://drupal.org/documentation/modules/privatemsg
それらしい記述はないように思います。
ホーム » 管理 » 環境設定 » Messaging » Private message settings » Private message settings
も見てみたんですが文字数については何も設定がないようです。
・文字数制限があるのか?
・文字数制限がある場合はフォームに注意書きを書き込みたいのですが
どのようにすれば良いのでしょうか?
もし、詳しい方がいらっしゃいましたら教えていただければ幸いです。
Comments
ご存知かもしれませんが、一人のユーザーが一度だけ経験した不
ご存知かもしれませんが、一人のユーザーが一度だけ経験した不具合で、なおかつその際の具体的な情報がなく、問題が再現可能でない場合、デバッグは極めて困難です。どのような動作の流れでその症状が出たのかを詳細に調べ、再現できるようになることが大事です。他のユーザーからも同じような苦情が寄せられた場合、問題発生時の詳細な手順を聞いてみることから始め、原因の特定を試みてください。(個人的には単に誤ってページをリロードしてしまったのではないかと思います)
また、用途にもよりますが、一般的にプライベートメッセージが1万文字になることは稀なのではないかと思います。ですので、試しに1万文字の文字列をコピペして送信してみてはどうでしょう(送信元・送信先、ロールなどを変えながら)。数度繰り返して行なっても不具合が出ないようであれば、文字制限についての注記は特に必要ないのではないでしょうか。
厳密に言えば、制限がないということはありません。それは、一度に POST できるデータの量や、メッセージを格納するデータベーステーブルのフィールドのサイズ制限などが必ずあるからです。
Privatemsg モジュールの .install ファイルを見たところ、以下のようになっています:
'body' => array('description' => 'Body of the message',
'type' => 'text',
'not null' => TRUE,
'size' => 'big',
size に 'big' とありますが、これは4GBにあたります。ですので、テーブルだけ見た場合は理屈上4GB までの文字列を送信可能ということになります。ただ、これを制限として記述すべきかどうかと言われると、おそらく不要なのではと感じます。
試してみました
返信ありがとうございました。
試してみたところ、10000字でも特に不具合はありませんでした。
理論上は4GBだとすると計算はできませんが
とにかくものすごく大きい数字だということはなんとなくわかります。
http://www2u.biglobe.ne.jp/~yuichi/rest/strcount.html
で試してみると10文字で22バイトになりましたので・・・
多分、なにかの操作ミスだと思います。
また他の方からもクレームなどがあったら検討しますが
今のままでは何もしないことにしました。
ありがとうございました。m(__)m