回显通过html发送的信息用PHP选择

时间:2011-03-10 12:46:52

标签: php html select echo

我有3个选择框,一个用于日,月和年。

用户选择所需的日,月和年后,点击“发送”。

当他们点击发送时,我希望PHP回应他们的选择。

我到目前为止的代码是:

<?php
$day = array(range(1,31));
$month = array(range(1,12));
$year = array(range(2011,2020));
?>
Day:
<select>
  <?php foreach($day[0]++ as $key => $value) { ?>
    <option value="<?php echo $key ?>"><?php echo $value ?></option>
  <?php }?>
</select>
<br>
Month:
<select>
  <?php foreach($month[0]++ as $key => $value) { ?>
    <option value="<?php echo $key ?>"><?php echo $value ?></option>
  <?php }?>
</select>
<br>
Year:
<select>
  <?php foreach($year[0]++ as $key => $value) { ?>
    <option value="<?php echo $key ?>"><?php echo $value ?></option>
  <?php }?>
</select>
<input type='submit' value='Send' name='poll' />

Date Selected: 

任何建议,改进,链接代码示例都将不胜感激。

4 个答案:

答案 0 :(得分:2)

单独使用 PHP 无法完成您所描述的内容。您需要使用客户端脚本来了解用户如何与 DOM 进行交互。有许多不同的方法可以实现这一目标。您最好的选择是使用 AJAX 框架,如 jQuery (如上所述),原型 Dojo ,或者的即可。我可能会选择jQuery,因为如果你已经习惯了css选择器,它很容易上手。

首先,您需要更改一下html,为输入元素提供 ID 类名。并且,还添加了一个显示元素,在本例中为 DIV 。然后你可以选择这样的DOM节点:

     <script>
        $( document ).ready( function () {
            $( '#send' ).click( function () {

                var span = document.createElement( 'span' );
                $( span ).attr( 'id', 'options' );

                $( 'select' ).each( function () {
                    $( span ).append($( this ).val() + " ");
                });                 

                $( '#show' ).html( span );

            });
        });
    </script>

我嘲笑了一个快速小提琴:JSFIDDLE

答案 1 :(得分:1)

使用全面的日期选择工具,例如内置于datepickerjQuery UI。他们在现场有例子。

如果您沿着3下拉选择路线走下去,您需要在那里进行一些时髦的动态切换,或者为无效日期做好准备。二月三十一日有人吗? :)

答案 2 :(得分:0)

首先,您需要指定标记,并指定数据的去向。其次,您需要将输入字段命名为可以检索它们。

您可能需要查看http://www.w3schools.com/php/php_forms.asp

答案 3 :(得分:0)

表单在哪里发布?尝试回显值的代码在哪里?你在这里有选择元素,它们的选项是在渲染页面时生成的,但下一步是在哪里?

提示:您的select元素需要名称才能随时访问这些值。此外,如果您要执行的 all 是向用户显示所选的值,则无需在任何位置发布表单或在服务器端执行此操作。 JavaScript可以很好地完成工作:)