電子書籍の厳選無料作品が豊富!

お世話になります。
フォームに関しての質問です。

<input ,,,,などは使えるようになりましたが、
今回やりたいことは、
表示した時刻をそのまま取り込むにはどうしたらよいか、
と言うことです。

もう少し詳しく説明します。
あるテスト問題をやらせ、
回答内容と、回答するまでの時間の2本立てで評価をしたいために、
cgiで問題を表示したときに開始時刻を表示し、
回答ボタンが押されてcgiに戻ったときに終了時刻を求め、
その間隔を把握したいのです。

しつこいですが、
開始時刻を表示し、その開始時刻をそのまま取り込みたいのです。

構想は、
&timeのように現在時刻を調べ、
取得した時刻を20090817 101225の様に開始時刻として表示し、
この表示した20090817 101225を回答内容と一緒に取り込みたいのです。
(取り込んだ後に同じく&timeで時刻を求め、間隔を割り出します)

以上、宜しくお願いします。

A 回答 (1件)

作戦は、ふたつあります。



作戦1 <input type="hidden" name="stime" value="1250475796">
この INPUTタグを form 中に含めてください。 表示用の開始時刻とは別にです。
・stime はパラメーターの名前なので、適当に変更してください。
・1250475796 は、time() の生の値です。 その方が、入力後の引き算が楽です。

作戦2 表示用の開始時刻をそのまま入力するには、以下の様にします。
<input type="text" name="stime" value="表示時刻" readonly>
テキスト入力欄らしくない体裁にするのはちょっと面倒かも知れません。


いずれの場合も method="get" なら、URL書き換えで開始時刻を偽るという不正行為がいとも簡単にできてしまいます。

この回答への補足

zxcv0000様、
お世話になりました。

作戦1で対応しました。
今後とも宜しくお願いします。

補足日時:2009/08/18 16:45
    • good
    • 0
この回答へのお礼

早速有り難うございます。

どちらも言われていることは分かりました。
作戦1は時刻を求め、同じ物を(1)表示と(2)取得用に使う、
と言うことですね。

作戦2は求めた時刻を(変更できないが)インプットボックスのように表示し、
そのまま取り込める、
と言うことですね。

まさに作戦2で書かれているように、
「テキスト入力欄らしくない体裁」がやりたいことです。
単純に表示して、それにnameが付けられれば可能なのですが。

いざとなれば、作戦1が使えますね、考えつきませんでした。
同じ時刻とは言え、表示したものではないことだけが気にすれば気になる、
という感じですが。
出来なければ仕方がないのでこの方法を採ろうかと思います。

申し訳ありません、
もう少し、他に教えていただけるかも知れないので、
開けておこうと思います。
有り難うございました。

お礼日時:2009/08/17 12:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!