- ベストアンサー
時間表示について....
教えてください。 ページ内に時間を表示させたいのですが、 サーバーの時間をそのまま取得して表示される方法はありますか? ※SSIは使えないサーバー、(CGI可)です。 表示される時間が、共通になるようにしたいのです! (ユーザーのPCに既存されないように、共通の時間帯で表示させたい) 宜しくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
java.util.Calendarクラスを用いればできます。 Calendar calendar = Calendar.getInstance(); //時 calendar.get(Calendar.HOUR); //分 calendar.get(Calendar.MINUTE); //秒 calendar.get(Calendar.SECOND); でint型の値が返ってきます。 この値はサーバの現在時刻になっています。
その他の回答 (2)
結構時間があいているので既に解決済みかもしれませんが。。。 まず、厳密にサーバ側の時刻で表示される時計を作成するのはほとんど不可能です。 CGIにしろ、ServletやJSPと呼ばれるサーバサイドで動作するJavaプログラムにしろ、動くのはユーザPCからのリクエスト(ページを見たいっていう要求)があったときに初めて動作します。 このため、一秒ごとに進む時計をサーバ側の時刻として取ってこようとすると、1秒ごとにサーバに「サーバの時間を下さい」っていうリクエストが必要になります。 # 具体的には、1秒ごとにリンクを押しているような状態をイメージしてください ということで、どうしても作りたいなら、時計を動かし始めるときのスタートの時刻をサーバの現在時刻と合わせて、後はjavascriptなりvbscriptなりを使って、 ユーザのPC上で時刻を進めるしかありません。 # このため、厳密にサーバ上の時刻とユーザのPC上の時刻を一致させることは不可能です。 # ほとんど誤差の範囲内になるとは思いますが。。。 次に、niftyの会員向ホームページサービスでは、CGIのみサポートされているようなので、ServletとかJSPとかという、サーバ側で動くJavaの技術を使うことは今はできません。 作るならCGIで、localetimeという関数を使ってサーバ上の時刻を取得し、この値をjavascript辺りを使ってユーザPC上で進めてやるしかないように思います。。。 実際のソースについては「CGI」に質問してみるべきだと思います。 # 私にはわかりません。すみません。
お礼
ありがとうございました。 また相談に乗ってください...。
ひょっとしたら解決済みかもしれませんが、質問の意味がちょっとよくわからないので、補足をお願いします。 > ※SSIは使えないサーバー、(CGI可)です。 1.Javaとして質問があがっているということは、java(Servletとか)が動くサーバということですか? 2.表示するのは、ある特定の時間ですか?それとも、時計のように動きつづける時間ということですか?
補足
アドバイス!感謝です。 あるサイトに”時間を画像でリアルタイムで表示” というのがありました。 ~ソースをそのままCOPYしました。~ <SCRIPT language="JavaScript"> <!-- document.write('<CENTER><IMG src="l_form.gif"><IMG src="am.gif" name="I1">'); document.write('<IMG src="8.gif" name="I2"><IMG src="8.gif" name="I3">'); document.write('<IMG src="point.gif"><IMG src="8.gif"name="I4"><IMG src="8.gif" name="I5">'); document.write('<IMG src="point.gif"><IMG src="8.gif" name="I6"><IMG src="8.gif" name="I7">'); document.write('<IMG src="r_form.gif"></CENTER>'); function TIME(){ t=new Date; H="0"+t.getHours(); M="0"+t.getMinutes(); S="0"+t.getSeconds(); if(12<=H){ if(H==12){T="pm";} else{H="0"+(H-12);T="pm";}} else{ if(H==0){H=""+12;T="am";} T="am";} H=H.substring(H.length-2,H.length+1); M=M.substring(M.length-2,M.length+1); S=S.substring(S.length-2,S.length+1); H10=H.charAt(0);H1=H.charAt(1); M10=M.charAt(0);M1=M.charAt(1); S10=S.charAt(0);S1=S.charAt(1); setTimeout('TIME()',1000); document.I1.src=T+".gif"; document.I2.src=H10+".gif"; document.I3.src=H1+".gif"; document.I4.src=M10+".gif"; document.I5.src=M1+".gif"; document.I6.src=S10+".gif"; document.I7.src=S1+".gif"; } // --> </SCRIPT> です。 別に画像表示ではなくていいです。(テキストにて表示) spoony様のご質問としまして... 1)すみません、初心者なので意味が良くわかりません。 サーバーniftyを使う予定です。 2)表示するのは、時計のように動き続ける時間です 宜しくお願いいたします。
補足
ありがとうございます。 実際のソースを教えてください。