カレッヂ |
質問者 アスカ
投稿日 2004/3/18(木) 21:23:00
初めまして。初心者です。 複数の画像ファイル(※)から、1つの画像を日毎に変えて表示したいのです。 1つの画像ファイルを選ぶ方法はランダムでもローテーションでも構いません。 (※)画像ファイルは増やしていく予定なので、自動的に画像のみのファイル数を取得できるようにしたいのです。 Perlで以上のようなプログラミングをし、サイトを作りたいのです。 是非、教えてください。よろしくお願い致します。
プロバイダ参照: |
回答者 sim
[削除]
投稿日 2004/3/19(金) 03:04:58
#!/usr/local/bin/perl #日付の取得 $today = (localtime(time))[3]; #更新日の取得 open(OPEN,"./lastdate.log"); @log = <OPEN>; close(OPEN); #日付変更時に画像の変更 if($log[0] != $today){ #画像データの全読み込み(GIFのみ)./gifディレクトリを指定。 opendir(DIR, "./gif"); @imagefiles = grep { /\.gif/ } readdir(DIR); closedir(DIR); #画像ファイルのランダム取得 $image = "./gif/".$imagefiles[rand(@imagefiles)]; #データの更新 open(OUT,"> ./lastdate.log"); print OUT "$today\n"; print OUT "$image"; close(OUT); }else{ #同じ日付なら同じ画像 $image = $log[1]; } #GIF画像の出力 print "Content-type: image/gif\n\n"; #画像の書込 open(IMG,"$image"); binmode(IMG); print while(<IMG>); close(IMG); これで<img src="gazou.cgi">とかで呼び出せるかと思います。 CGIで使うのであれば普通にprint"<img src=$image>";でいけると思います。 |
質問者 アスカ
[削除]
投稿日 2004/3/19(金) 21:10:03
ありがとうございます。 大変うれしいです。 いつかsim様のようにプログラミング出来るようがんばりたいと思います。 |
このページは終了したので返信(回答)は書きこめません
Web裏技 |