• ベストアンサー

for文で年のプルダウンを作成したい

年、月、日それぞれのプルダウンを作成したいのですがうまくいきません。 ひとまず年だけなのですが、以下のような感じです。 (今年から過去4年のプルダウンを出したい) 変数がうまく入らない感じです。 <select name="from_year" > <?php $this_year = date("Y", time()); for ($from_year_loop = $this_year; $from_year_loop < $this_year-3; $from_year_loop--) {     echo "<option value=\"".$from_year_loop."\">".$from_year_loop."</option>"; } ?> </select> 年 よろしくお願いしますm(__)m

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

  • ベストアンサー
  • moon_night
  • ベストアンサー率32% (598/1831)
回答No.2

forの真中が逆ですよ。 for ($from_year_loop = $this_year; $from_year_loop < $this_year-3; $from_year_loop--) { ↓ for ($from_year_loop = $this_year; $from_year_loop > $this_year-3; $from_year_loop--) { あと、四年分ならば for ($from_year_loop = $this_year; $from_year_loop <= $this_year-3; $from_year_loop--) { または for ($from_year_loop = $this_year; $from_year_loop < $this_year-4; $from_year_loop--) { としなければなりません。

yubaginnan
質問者

お礼

NO.1さんと合わせてお礼させていただきます。 ありがとうございますm(__)m ほんとですね。おかしいなぁとは思っていたのですが、こんな簡単なことなのにはまってしまうと抜け出せず…(;_;) 助かりました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

× $from_year_loop < $this_year-3; ○ $from_year_loop > $this_year-3; 不等号が逆向きですね

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • プルダウンからの日付取得処理

    現在、PHP+SQLiteでWEBページを作成しております。 (初心者です。) フォームに日付をプルダウンで選択出来るように、 $utime = time()+$jisa*3600; $today = getdate($utime); //年のセレクトボックス(±2年) echo "<select name=year>\n"; for ($y=$today[year]+2; $y>=$today[year]-2; $y--) { $sel = ($y == $today[year]) ? " selected" : ""; echo "<option value=\"$y\"$sel>$y</option>\n"; } echo "</select>/\n"; //月のセレクトボックス(12-1月) echo "<select name=mon>\n"; for ($m=12; $m>=1; $m--) { $sel = ($m == $today[mon]) ? " selected" : ""; echo "<option value=\"$m\"$sel>$m</option>\n"; } echo "</select>/\n"; //日のセレクトボックス(31-1日) echo "<select name=day>\n"; for ($d=31; $d>=1; $d--) { $sel = ($d == $today[mday]) ? " selected" : ""; echo "<option value=\"$d\"$sel>$d</option>\n"; } echo "</select>\n"; というコードを記述しております(これはネットを参考にしました)。 これでプルダウンの表示自体は出来たのですが、実際にここから値を取得するにはどうすれば良いかが分かりません・・・。 ご教授お願いいたします。

    • ベストアンサー
    • PHP
  • 年月日のプルダウンメニューで教えてください。

    php初心者です。 セレクトメニューで悩んでいます。 以下のようなフォームを作っています。 プルダウンメニューで2007年1月1日を選んだ時 結果を20070101にし、SELECTDATEのaaaに持たせたいのですがどうすればいいのかわかりません。 どなたか教えてください。 <form name="etc" action="etc"> <?php echo "<select name=\"YEAR\">"; for ($i = 0; $i < 2; $i++) { echo "<option>".date("Y", strtotime("+$i year")); } echo "</select>年"; echo "<select name=\"MONTH\">"; (中略) echo "<select name=\"DAY\">"; (中略) ?> <input type="hidden" name="SELECTDATE" value="aaa" /> </form>

    • 締切済み
    • PHP
  • 選択されたプルダウンの値を変数に渡したい

    以下の日付プルダウンですが、 任意の日付が選択されたときに、 その値(日付)を他の変数に渡せるようにしたいです。 どのように他の変数に渡せば良いでしょうか? <? $today=time(); $limit=30; echo "<select name=puldown>"; $menu=$today; for($i=0; $i<$limit; $i++){  $menu=date("Y/m/d",$today-86400 * $i);  echo "<option value=$menu>$menu</option> \n"; } echo "</select>"; ?>

    • ベストアンサー
    • PHP
  • プルダウン 値保持 onchange

    失礼します、現在年月のプルダウンを作成しており プルダウン自体は年月の作成ができなのですが再読み込みした際に プルダウンに選択した値を保持して欲しいです。 現在リダイレクト先を自身にしております。また、onChangeでプルダウンをした際に読み込むようにしています。 ご教授頂きたいです。宜しくお願い致します。 htmlに埋め込んでいるので読みにくいかと思いますがご了承ください <form action="<?php $self ?>" method="POST"> <select name = "year" onChange="javascript:submit()"> <?php for ($y = 2000; $y < date(Y)+1; $y++) :?> <?php if($s == 0) : ?> <option value="<?php echo $y ?>">選択してください</option>; <?php ++$s ?> <?php endif; ?> <option value="<?php echo $y ?>"><?php echo $y ?></option> <?php endfor; ?> </select> <?php $a = array('1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'); ?> <select name = "month" onChange="javascript:submit()"> <?php foreach ($a as $key => $value) :?> <?php $b = $key + 1 ?> <?php if($h == 0) : ?> <option value="<?php echo $y ?>">選択してください</option> <?php ++$h ?> <?php endif; ?> <option value="<?php echo $b ?>"><?php echo $value ?></option> <?php endforeach; ?> </select> </form>

    • ベストアンサー
    • PHP
  • プルダウンについての質問です

    プルダウンメニューでリンク先にページを飛ばした後、ツールバーの <戻るボタン>でページを戻すと、同じプルダウンメニューのリンク先 には飛ばなくなってしまいます。 どうすればページを戻した後でも、同じプルダウンメニューのリンク 先に飛ばす事が出来るのでしょうか? 使ったHTMLは <FORM NAME="linkmenu"> <SELECT style="width: 220px" NAME="linklist" onchange="location=this.value"> <OPTION SELECTED>以下の項目から選択してください。</OPTION> <OPTION VALUE="index.html">1.テストページ1</OPTION> <OPTION VALUE="2.html">2.テストページ2</OPTION> <OPTION VALUE="3.html">3.テストページ3</OPTION> </SELECT> </FORM> というものです。

    • ベストアンサー
    • HTML
  • プルダウン式BGMについて

    私は現在、MIDIを聴いてもらうためにプルダウン式の MIDI選択にしています。しかし、音楽に2種類の カテゴリーがあり、2個設置したことろ相殺してしまって、 どちらも聴けなくなってしまいました。どうすればいいでしょうか? ソースは以下のを2個記入してあるだけです。 <BGSOUND LOOP='-1' ID='uri' bolume='' SRC=''> <form> <SELECT onChange=if(this.options[this.selectedIndex].value!='--'){uri.src=this.options[this.selectedIndex].value}> <OPTION VALUE=''>音楽を止める ----以下繰り返し続くので省略---- </select> </form> と記入しています。

  • プルダウンを連続してだしたいのですが

    プルダウンにあ行、か行などと入れてそこにあわせるとさらに右にあ行のプルダウンが出るようにしたいのですがどのようにしたらいいのでしょうか? <frome acton="xxx.cgi"> <div> <select name="gyou"> <option value="agyou">あ行 <select name="moji"> <option value="a">あ <option value="i">い <option value="u">う <option value="e">え <option value="o">お </select> <option value="katyou">か行 </select> </div> 一応考えてやっては見ましたができませんでしたので添削しながらでもやり方だけでもかまいませんので教えていただきたいです。

  • ラジオボタンとプルダウンで困っています。

    教えてgooの質問等を参考に携帯のサイトを作っております。 どうしても分からない部分がありましたので教えてください。 日付を選択するフォームを作成しており、内容は ラジオボタンで「今日の日付」「指定日」のどちらかを選択。 「指定日」を選択した場合は「指定日」の下にプルダウンで年月日を選択できるようにしております。 今日の日付は次のページにデータを渡すことができるのに 「指定日」の年月日はどうしても次のページに渡すことができません。 <form action=comf.php method=POST> <input type=radio checked name=day value="<?php echo"".$now_date = date("Ymd").""?>">1:今日 <br> <input type=radio name=day value=○○>3:指定日 <br> <select name="year" > <option value="2006">2006</option> </select> 年 <select name="month" > <option value="01">01</option> 月 <select name="date"> <<option value="01">01</option> 日 <input type=submit value="確認画面へ"> 指定日の「value=○○」には何を入れればよろしいのでしょうか? ご教授お願いいたします。

    • ベストアンサー
    • PHP
  • プルダウンメニューのvalue値を連携したい。

    お世話になります。 初心者です。 下記のようなプルダウンメニューがあるのですが、 select name = "no" の1を選んだら その下の select name、 no_1、no_2、no_3、no_4、も 1になるよう、また select name = "no" の2を選んだら その下の select name、 no_1、no_2、no_3、no_4、も 2になるように連携したいのです、 またそれぞれのvalue値をPHPでPOSTしたいのです。 どうやったらできるのかわかりません サンプルプルグラム等でも良いので ご教授の程よろしくお願い致します。 <form name="name_no" id="name_no" method="post" onSubmit="return check()"> <select name = "no"> <option value = "1">1</option> <option value = "2">2</option> </select> <select name = "no_1"> <option value = "1">1</option> <option value = "2">2</option> </select> <select name = "no_2"> <option value = "1">1</option> <option value = "2">2</option> </select> <select name = "no_3"> <option value = "1">1</option> <option value = "2">2</option> </select> <select name = "no_4"> <option value = "1">1</option> <option value = "2">2</option> </select> </form> <input type="submit" >

  • プルダウンのoptionの表示・非表示はできますか?

    JavaScriptを使ってプルダウン操作をしております。 一つ目のプルダウンで選択したあと2つ目のプルダウンのoptionの部分だけ表示・非表示をしたいのです。そんなことはできるのでしょうか? 下のソースで説明しますが、一つ目のリストで「あいうえお」を選択した時点で2つ目の選択リストの「ひらがな1」と「ひらがな2」だけを選択できるようにしたいのです。「カタカナ1」「カタカナ2」は非表示もしくは選択不可にできればいいのですが。 一つ目のプルダウンリスト <select name="formtype" onchange="form_indicate();"> <option value="AAA">あいうえお <option value="BBB">アイウエオ </select> 二つ目のプルダウンリスト <select name="formtype2"> <option value="aaa">ひらがな1 <option value="bbb">ひらがな2 <option value="ccc">カタカナ1 <option value="ddd">カタカナ2 </select>