プロが教えるわが家の防犯対策術!

超初心者です。下記の年月を表示したいのですが、年に関して、数字を(例)のように変更しても30以上の数字が出ません。 29と30しか表示されません。
どこに問題があるのでしょうか? 30までの制限がかかってるのでしょうか?
月はしっかりと表示が出ます。

(例)<?php for($i=23;$i<=30;$i++):?> 変更→ <?php for($i=29;$i<=33;$i++):?>

「スクリプト」
<td class="midashi" nowrap>12. 年<font size="2" color="#000080">(必須)</font></td>
<td class="error"><select name="syaken_y" onblur="Validator.check(this)">
<option value="" selected>-</option>
<?php for($i=23;$i<=30;$i++):?>
<option value="<?php echo $i;?>"<?php echo ($i == $syaken_y)?" selected":"";?>><?php echo $car_check_Year[$i];?></option>
<?php endfor;?>
</select>年
<select name="syaken_m" onblur="Validator.check(this)">
<option value="" selected>-</option>
<?php for($i=1;$i<=12;$i++):?>
<option value="<?php echo $i;?>"<?php echo ($i == $syaken_m)?" selected":"";?>><?php echo $i?></option>
<?php endfor;?>
</select>月 </td>

A 回答 (1件)

これを見ると、元のプログラムは


<option value="23"> $car_check_Year[23]の内容</option>
<option value="24"> $car_check_Year[24]の内容</option>
...
という感じのHTMLができるように見えます。

$car_check_Year の内容はどうなっているのですか?


> 29と30しか表示されません
とありますが、HTMLのソースコードは見ましたか?
ソースを見ると
<option value="29">29</option>
<option value="30">30</option>
<option value="31"></option>
<option value="32"></option>
<option value="33"></option>
という感じに、 optionタグはできていて、その内容が空欄になってたりしませんか?

もしそうなら、 $car_check_Year[31] 等に期待するような値が入っていない、ということになるでしょう。
    • good
    • 0

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