[PHP-users 31869] Re: カウントダウン表示がうまくいかない

ymorii yo-morii @ sdl.hitachi.co.jp
2007年 4月 9日 (月) 14:07:08 JST


Moriiと申します。

もう解決しているようですが、
「PHPだけで」ということで以下のような解決方法はいかがでしょうか。

<?
  for( $i = 10; $i >=0; $i-- ){
	ob_start();
	printf ("<div id='OutArea' style='position: absolute; left:100px;
top:100px;background-color:#fff;text-align:right;'>%s あと %02d秒 </div>",
date('h:i:s'), $i);
	flush();
	sleep(1);
	ob_end_flush();
	//ob_end_clean();
  }
?>

文字列を同じ場所に表示すると文字がかぶるので、
"background-color"で白く塗っています。

Hiroshi Homma wrote:
> ご回答ありがとうございます。
> 
> JavaScript(SetTimeout)とPHPを組み合わせてうまくできました。
> 
> これからもよろしくお願いします。
> ----- Original Message ----- 
> From: "KKuji_Y2a" <kkuji @ mwb.biglobe.ne.jp>
> To: "PHP-users ML" <php-users @ php.gr.jp>
> Sent: Sunday, April 08, 2007 5:11 PM
> Subject: [PHP-users 31862] Re:カウントダウン表示がうまくいかない
> 
> 
>> KK @ IB です
>>
>> サーバープロセスをループさせても、
>> クライアント側でそのループ過程は見ることができません。
>> ループ結果だけが見えます。 そういうことがおきていると思います。
>>
>> PHPで、カウントダウンするなら、クライアント側に1秒ごとに受信してもらう
>> 必要があると思います。
>>
>> でも、受信って、クライアント主導なんですよね。
>> ですから、クライアントスクリプトか何か、Ajaxでもいいのかな、
>> そういうものがやはり必要だと思います。
>>
>> _______________________________________________
>> PHP-users mailing list  PHP-users @ php.gr.jp
>> http://ml.php.gr.jp/mailman/listinfo/php-users
>> PHP初心者のためのページ - 質問する前にはこちらをお読みください
>> http://www.php.gr.jp/php/novice.php3
>>
> 
> 
> --------------------------------------
> Protect Your PC Now ! -  0 yen Security Campaign
> http://pr.mail.yahoo.co.jp/premium/
> 
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3
> 
> 




PHP-users メーリングリストの案内