本当は「FC2ブロガーのみんな、オラに知恵をわけてくれ!」というタイトルにしようと思ったのですが止めました。さて発端は この辺り からでしょうか。話としてはもっと昔からあって、私が最初に気になったのは
コメント投稿欄にはパスワード、という欄があるのだが、パスワードを入力しなくても投稿はできる。これ、どこにも説明がない。パスワードを入れる前にうっかりエンターキーに触ってしまったら……投稿されてしまって、そのコメントは運営者の掌中へ。投稿者は、編集も削除もできないという事態に陥る。 [微苦夢] そんなわけで、コメント投稿欄について考えてみた。
という文章でした。これを読んでなるほどなと思い、
「うっかり」を少しでも減らすために、当ブログではコメント本文の前にパスワード欄を置いた。普通は上から入力していくだろう。本文を入力する前にパスワードを入れることで、ミスを減らすことができるのではないかと考えた。同様にそのコメントをブログ上で公開するか非公開にして運営者にだけ見せるかの選択チェックボックスも本文の上に。投稿者は、そのメッセージの属性をあらかじめ決めてから本文を書くことになる。 [微苦夢] そんなわけで、コメント投稿欄について考えてみた。
という方法を当サイトでも導入させて頂いたのですが、それでもやはり 問題は起こり得る。これは良くある事ですし、投稿者が上から順に項目を埋めて行くとは限らない。
そういう訳で先日規定のパスを設定する事にした。方法は
<input id="pass" name="comment[pass]" value="pass" type="password" />
などとするだけで良いので比較的易しい。これで万事解決かと思われたのですが、思わぬ問題が生じる事がわかった。これは人によっては致命的な問題だ。そこで何とか他の方法はないだろうかと無い知恵を振り絞ってみたのですが、思いつく方法と言えば
<input id="pass" name="comment[pass]" value="pass" type="hidden" />
というのを埋め込んで、投稿者の意図とは関係なくパスワードを送ってしまう事だ。最初はこれで上手く行くのではないかと思われたのですが、やはり無理があるようで、<input id="pass" name="comment[pass]" type="password" /> と <input id="pass" name="comment[pass]" value="pass" type="hidden" /> とで後に書かれた方を優先するらしく、このままの順番で書くとパスワードは必ずpassになり、逆にすると投稿者が記入したパスワードに設定される。それでは逆にしたまま投稿者がパスワードを記入しなければpassになるのではないかと思ったが、それはやはり都合の良い解釈のようで、結果は無記入と同じ扱いだった。これでは何の意味も無い。
私の考察はここまでです。解決方法まで提示できなくて申し訳ないです。そういう訳で知恵を貸して欲しいと思ったのです。もう少しの様な気がするのです。これが出来れば皆が幸せになれると思うのですがいかがでしょうか。例えばパスワードの欄が埋まってない時に送信が実行されると自動的にpassという文字列が補完されて送信されるJavaScriptなどならば出来そうな気がしますが、できればJavaScriptは用いずに何とかしたいものです。name="comment[pass]" の辺りの仕様がいまいちわからないので何とも言えないのですが、name="comment[sub]" のような物が存在し、name="comment[pass]" の項目が無記入の場合は name="comment[sub]" のデータを送るというような仕様ならば <input id="pass" name="comment[sub]" value="pass" type="hidden" /> とすれば良いだけなのでスマートなのになと夢想してみたりしています。
どなたか美しい代替案はございませんでしょうか。また、こんな風にしているサイト(FC2ブログ)を見たという情報も歓迎です。多くのブログでこのような仕様が採用されれば送信ミスを犯しても後で編集できるので恐れず(?)に手軽にコメントが可能になり、交流が増えると思うのです…と言うのは流石に大袈裟だと思いますが、コメントのミスを管理者が消す手間や、コメントの投稿ミスの削除を管理者にお願いするといった事も減ると思うのです。どうかここを覘いてくださっている方で妙案があられる方は教えて頂けると嬉しいです。