• ベストアンサー

期間ごとに画像表示を切り替える方法

ホームページ上の画像が、一定期間ごとに自動的に切り替わるような方法はありますでしょうか。 "期間ごと"とは、例えば、 1月1日~1月31日までは画像1を表示、 2月1日~2月28日までは画像2を表示… という感じです。 ネット上では、 特定の日に画像を表示させる方法(1月1日に画像を表示させる等)や、 時間ごとに画像を表示させる方法などを見つけましたが、 この方法をそのまま使用して目的の機能を満たそうとすると 非常に記述が長く、細かくなってしまうと思います。 比較的簡潔な記述でこれを満たす方法がございましたら 教えて頂けませんでしょうか。

  • gksu
  • お礼率88% (22/25)
  • HTML
  • 回答数4
  • ありがとう数4

質問者が選んだベストアンサー

  • ベストアンサー
  • sr-ki
  • ベストアンサー率66% (6/9)
回答No.4

月ごとにかえるということではなかったんですね^^;すみません ご希望の内容なら、PHPの場合は以下の要領で。 期間によって条件を指定してそれぞれ表示する画像を指定してやればOKです。 if()のカッコ内が条件を指定している部分です。 どの条件にも該当しない場合はこの部分は表示されません。 <?php $date = date('nd'); //今日の日付 if($date >= 109 && $date <= 125) { //↑今日が1月9日(109)以降(以上)で、且つ1月25日(125)以前(以下)の場合 echo '<img src="aaaa.jpg" width="500" height="200" alt="画像a" />'; } elseif($date >= 905 && $date <= 1005) { //↑今日が9月5日(905)以降(以上)で、且つ10月5日(1005)以前(以下)の場合 echo '<img src="bbbb.jpg" width="500" height="300" alt="画像b" />'; } elseif($date >= 1220 || $date <= 102) { //↑今日が12月20日(1220)以降(以上)か、1月2日以前(以下)の場合 //↑年またぎの場合は書き方が少し変わるので注意 echo '<img src="cccc.jpg" width="500" height="400" alt="画像c" />'; } ?>

gksu
質問者

お礼

ご回答ありがとうございました!

その他の回答 (3)

  • sr-ki
  • ベストアンサー率66% (6/9)
回答No.3

以下のようなPHPを使った方法はいかがでしょう? javascriptでも可能ですが、お使いのサーバーでPHPが使えるようならPHPの方が良いと思います。(javascriptで出力する部分は検索エンジンのロボットが読んでくれないなどのデメリットがあります) 画像サイズや代替テキストの内容はどの月も同じで、画像ファイル名を月に対応した連番に出来て、毎月画像を変えるということならこんな感じです。 画像ファイル名:"hoge_1.jpg"~"hoge_12.jpg" <?php $month = date('n'); ?> <img src="hoge_<?php echo $month; ?>.jpg" width="500" height="200" alt="代替テキスト" /> 画像ファイル名やサイズ、代替テキストがバラバラということであれば、こんな感じ <?php $month = date('n'); $img['1'] = '<img src="itigatsu.jpg" width="500" height="200" alt="一月の画像" />' $img['2'] = '<img src="nigatsu.jpg" width="500" height="300" alt="二月の画像" />' $img['3'] = '<img src="sangatsu.jpg" width="500" height="400" alt="三月の画像" />'  ↓省略 $img['12'] = '<img src="jyuunigatsu.jpg" width="500" height="100" alt="一二月の画像" />' ?> <?php echo $img[$month]; ?>

gksu
質問者

お礼

うわーっ! すいません! 誤解を招くような質問の書き方をしてしまいまして! 以下、回答No.1様~回答No.3様までのご回答と合わせて補足説明致します。 私の最終目的は、"月ごとに画像を表示"ではありません。 質問の際には、"例"として、あの期間を示しただけです。 最終目的は、"1月9日~1月25日までの期間にこの画像を表示"みたいな感じであり、 この期間は、月とは関係無く(月の中に収まる時も、月をまたぐ時もある)、 その期間も(約2週間程度になると思いますが)まちまちの長さの期間です。 期間同士も、必ずしも連続していません。 それと、環境はWindows Vistaです。 ご回答ありがとうございました。

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.2

http://e-html.aofp.net/java_info/j_sample_5_1.html こう言ったことでしょうか?

gksu
質問者

お礼

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

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.1

javascriptで12か月分記述する。 でも、javascriptでテキストの書き換えを禁止している場合は使えない。 確実なのはshell scriptでサーバー側に任せること。 #/bin/sh 略 echo 'HTTP/1.1 200 OK' echo 'Pragma: no-cache' echo 'Cache-Control: no-cache' echo 'Expires: -1' echo 'Last-Modified: $DATE echo 'Accept-Ranges: bytes' echo 'Content-Length: 3053' echo 'Content-type: image/gif' echo cat $IMG とか・・

gksu
質問者

お礼

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

関連するQ&A

  • その日ごとに画像を表示させる方法

    ホームページにその日ごとに画像を表示させる方法が分かる方いましたら教えてください。 表示方法ですが、 1日なら1.jpgを表示 2日なら2.jpgを表示 3日なら3.jpgを表示   ・   ・   ・ 31日なら31.jpgを表示 翌月1日になったら、また1.jpgを表示   ・   ・   ・ といったかたちです。 全く初心者なのでソースを書いていただければ助かります。 よろしくお願いします。

  • ツイッターの画像の表示

    今まではクリックしないと画像表示されなかったものが、ある時期から勝手に表示(2/3くらい)されるようになっていました。 これってどうしてこうなるのでしょうか?始めてから一定期間たつと自動的になるものなのでしょうか?教えてください。 勝手に情報入ってくるのがネットなのでだったらやめればいい話だし半分諦めてますが 非表示というか以前のようにできる方法あったらついでに教えてください~ 不適切な画像の警告とかはもうやってます。

  • その日ごとに画像を表示させる方法

    ホームページにその日ごとに画像を表示させる方法が分かる方いましたら教えてください。 表示方法ですが、 1日なら1.jpgを表示 2日なら2.jpgを表示 3日なら3.jpgを表示   ・   ・   ・ 31日なら31.jpgを表示 翌月1日になったら、また1.jpgを表示   ・   ・   ・ といったかたちです。 JavaScriptでできるというところまでは調べる事ができましたが、全く初心者なのでソースを書いていただければ助かります。 よろしくお願いします。

    • ベストアンサー
    • Java
  • キャッシュされた画像を使わずサーバーの画像を使う方法

    ホームページ上の画像を更新してもキャッシュされた画像が表示されてしまいます。 自動更新する画像ですが、最新画像が見られません。 JavaScript でこれを防止するような記述はありますか? HTML+TIME でできるようなことを聞いた事がありますが、HTML+TIMEでサーチし、書かれていたことにはキャッシュが無効になるような表現がなく、また利用方法が理解できませんでした。 よろしくお願いします。

  • 特定の画像を非表示にする方法

    CSSかJavascriptを使って、自動的にページに組み込まれてしまう画像を非表示にしたいです。 ソースに特定の画像を非表示にする内容を書き込むと思うのですが・・(非表示にする画像のURLを指定?) よろしくお願いいたします。

  • 別ファイルの更新を画像で知らせる方法

    HPのメインページから各コンテンツへリンクを貼っていますが、そのリンク先のファイルを更新したら自動的に/一定期間だけ「up!」などの画像を表示させたいのですが、何か良い方法はありませんか?

    • ベストアンサー
    • CSS
  • 祝日に決まった画像を表示させる。

    ●ホームページに自動的に祝日に決まった画像を表示させたいのですが・・・。 何か良い方法はありませんか? ソースやURLなど書いていただけると助かります。

  • CGIを使って、ホームページの画像を自動ローテーション表示する方法を教えて下さい。

    携帯電話のホームページを作成しています。  まったくの初心者なので知識が無いのですが、 CGIを使って、ホームページの画像を自動ローテーション表示する方法があると聞いたのですが、方法がわかりません!(画像を例えば毎日変更して表示させる方法です!?)  お知りの方がいましたら是非宜しくお願いいたします。

    • 締切済み
    • CGI
  • 期間を表示させる組み方を教えてください。

    期間を表示させる組み方を教えてください。 java script初心者です。 ホームページ上に 2010年10月30日~2010年11月5日 計7日 とjava scriptで表示させたいとします。 html内に <script language="JavaScript" type="text/javascript"> <!-- Kikan("2010/10/30"); //--> </script> と埋込,このデータを読込んでココに上記のように表示させる ソースの組み方のお知恵をお借りしたいのです。 外部スクリプトに kei=7; function Kikan(hizuke) { mykikan=new Array(); mykikan=hizuke.split("/"); dat= mykikan[0] + "年" + mykikan[1] + "月" + mykikan[2] + "日" } document.write(dat + "&nbsp;計" + kei + "日"); とすればとりあえず 2010年10月30日 計7日 という表示が出来るところまでは理解できたのですが そのあとKikanにkeiを足して 2010年10月30日~2010年11月5日 計7日 と表示させるにはどのようにすると良いのでしょうか。 参考書見ながら現在の日にちを取得して比較させkeiの数値を足すのではないかと 考えはするのですが始めたばかりでまだ知恵が足りません。 よろしくお願いいたします。

  • 毎日違う画像を表示したい

    あるディレクトリ内に収めた多数の画像の中から一枚だけ選んで毎日ランダムにホームページ上に表示させるスクリプトを考えていますがうまくいきません。 なるだけシンプルに実現する方法がありましたら初心者にもわかるようソースの記述例をお教えください、どうぞよろしくお願い致します。

    • ベストアンサー
    • CGI