Php 选择给定月份后自动显示月份的天数范围

Php 选择给定月份后自动显示月份的天数范围,php,Php,我有一个进退两难的处境,但我似乎无法摆脱它 我有一张我写的表格,到目前为止效果很好,但我想在 我在属性为name=month的select标记中选择了一个月,它会自动显示相应的天数范围 1到属性name=day的select标记中该月的天数,如我的代码中monthDays数组中定义的 这是最好的方法,因为我不想使用javaScript,因为我不太擅长它,我只想将它保存在HTML和PHP中 这是我的密码: <?php $startYear = 1970; $y

我有一个进退两难的处境,但我似乎无法摆脱它

我有一张我写的表格,到目前为止效果很好,但我想在 我在属性为name=month的select标记中选择了一个月,它会自动显示相应的天数范围 1到属性name=day的select标记中该月的天数,如我的代码中monthDays数组中定义的

这是最好的方法,因为我不想使用javaScript,因为我不太擅长它,我只想将它保存在HTML和PHP中 这是我的密码:

<?php
        $startYear = 1970;
        $years = (int)date('Y') - $startYear;

        $monthDays = array(
            "January" => 31, "February" => 28, "March" => 31, "April" => 30,
            "May" => 31, "June" => 30, "July" => 31, "August" => 31,
            "September" => 30, "October" => 31, "November" => 30, "December" => 31
        );
    ?>

    <form action="" method="post">
        <table>
            <tr>
                <td><label for="dob">Date of birth</label></td>
                <td>
                    <?php
                        $months = array_keys($monthDays);
                        $days = array_values($monthDays);
                    ?>
                    <select name="month">
                        <?php
                            foreach($months as $key => $month) {
                                $x = $key + 1;
                                echo "<option value=\"$x\">$month</option>";
                            }
                        ?>
                    </select>

                    <select name="day">
                        <?php
                            for($i = 0; $i < 31; $i++) {
                                $x = $i + 1;
                                echo "<option value=\"$x\">$x</option>";
                            }
                        ?>
                    </select>

                    <select name="year">
                        <?php
                            for($i = 0; $i <= $years; $i++) {
                                $selectedYear = $startYear + $i;
                                echo "<option value=\"{$selectedYear}\">{$selectedYear}</option>\n";
                            }
                        ?>
                    </select>
                </td>
            </tr>
            <tr>
                <td></td>
                <td><input type="submit" name="submit" value="Submit"></td>
            </tr>
        </table>
    </form>

提前感谢您的帮助。

您需要使用javascript动态添加/更改页面内容。使用javascript的替代方法是:选择月份,提交表单,用php读取所选月份,显示日期,将它发送回客户端。您可以通过每次在表单中发布当月内容时调用php脚本来实现。编辑:这基本上就是@Michel所建议的。