プロが教える店舗&オフィスのセキュリティ対策術

画像のランダム表示をウェブでしたいと思います。
画像1、画像2、画像3・・・・という風に指定してランダム表示するのはわかるのですが、あるフォルダに入っている画像をランダムに表示させる方法はあるでしょうか?

テーブルを使っているのですが、できるでしょうか?

A 回答 (5件)

簡単なのは、下記参照


マウスが重なったら、その下の画像をランダムに切り替える
http://www.openspc2.org/reibun/javascript/mouse/ …
これはonMouseoverのソースなのでbuttonでonClickはそこを変更すれば出来るから。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2005/01/11 08:51

Perl/CGIであれば、味気なくて良ければ次のようになるかと思います。



--
#!/usr/bin/perl -w
use strict;

my $img_dir = './image/'; # 画像ディレクトリを指定
my %mime = (
'.jpg' => 'image/jpeg',
'.gif' => 'image/gif',
'.png' => 'image/png',
); # 拡張子とMIMEタイプを結びつける

# ディレクトリから画像のパスを格納
my @images;
opendir my $dfh, $img_dir or die "directory open error:$!";
while( my $file = readdir $dfh ){
unless ( $file =~ /^\./ ){
push @images, $file;
}
}
closedir $dfh;

# ランダムに画像を選ぶ
srand(time);
my $rand_img = $images[ int rand $#images+1 ];

# 画像を開いて出力
my ($exp) = ( $rand_img =~ /.*(\.[a-zA-Z0-9]+?)$/ );
open my $fh, $img_dir.$rand_img or die "file open error: $!";
binmode $fh;
print 'Content-Type:' . $mime{$exp} . "\n\n";
print join undef, <$fh>;
close $fh;

exit;
--

ちなみにこれは、imgタグで呼び出すタイプにしました。あと、エラートラップをほぼしていないので、例えば画像ディレクトリ内に妙なファイル(テキストとか)があるとエラーでしょう。(一応ドットファイルは避けていますが。)まぁ、その他必要な機能はご自分で勉強&解析しながら調整していただければ。
    • good
    • 0
この回答へのお礼

ありがとうございました。
何とか解決しそうです。

お礼日時:2005/01/11 08:50

CGIなどを利用すれば可能です。


その場合は、画像のあるフォルダ内を読み取り、
中にある画像をランダムで表示させてやればよいです。

しかしこの手のものはフリーで配布されている可能性が非常に低いので自作することになると思います。
ある程度作り方をを知っていればそんなに難しいことではありませんが、何も知らない場合は相当な努力が必要です。

ちなみに、HTMLの中に埋め込む場合、SSIで読み込むかiframeで埋め込むか、IMGタグでCGIファイルを読み出すかのどれかになります。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2005/01/11 08:51

Web屋です。

OkWebの様なサイトの設計, 開発を仕事としています。

例えば、CGIを利用してランダムに表示する。
と言う意味に捕らえれば良いのでしょうか?

静的なHTMLで行うのであれば、
表示したい順序にimgタグを書けば良いだけの事なので、
意図が見えませんでした。

「テーブル」と画像の表示は直結しません。
画像を並べて表示する時に、
表示位置を固定化するなどの目的を果たすために
利用する場合があります。

表示位置の固定化をする時、
最近はテーブルを利用するのではなく、
スタイルシートを利用して設定する事が
良いとされています。

この回答への補足

言葉足らずでスイマセン。
CGIやJavaスクリプトなどを使って、ウェブが表示される際ランダムに画像を表示したいと思います。
更新ボタンを押すと画像が変わるような状態です。

http://external.pcc.jp/~biso/sample/randam_jamp3 …
このような感じです。
これをフォルダ内の画像を指定せずに勝手に表示するような形って、できるのでしょうか?

補足日時:2004/12/27 20:55
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2005/01/11 08:51

フォルダをアップロードすれば



いいのでは・・
    • good
    • 0

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