填充php中的选择框

时间:2016-04-11 14:57:36

标签: php

我正在学习php并在一个页面上有一个表单。当您按下提交按钮(使用$_GET)时,它将转到包含表单其余部分的新页面。

我在选择框中显示成人人数。

我如何$_GET值并将其放入选项中以便填充?

3 个答案:

答案 0 :(得分:0)

提交表单后,您可以获取$ _GET发送的值['变量名称'];

如果您的选择名称为adult_number,则可以选中此选项

<select name="x">
<?php
$adult_number = $_GET['adult_number'];
for($i=0; $i<10; $i+=1)
{
    $selected = ($adult_number == $i ? 'selected' : '');
    echo '<option value="'.$i.'" '.$selected.' />';
}
?>

这将检查提交的金额是否等于$ i(例如从1到10),如果它相等,它将选择此选项的选项。

答案 1 :(得分:0)

以下是发布给自己的表单示例。

构建选项列表时,我们会根据用户提供的值检查值,如果匹配,则添加属性“selected”。

<?php

$options = array('3', '4', '5');
$adults  = null;
$error   = null;

if($_SERVER['REQUEST_METHOD'] == 'POST') {
    $adults = isset($_POST['adults']) ? $_POST['adults'] : null;

    // Check the user supplied valid number.
    if(in_array($adults, $options)) {
        echo 'Valid post.';
        // Your processing.
    } else {
        $error = 'Invalid option for adult.';
    }
}
?>
<html>
<head><title>Select list form</title></head>
<body>
<?php if($error) echo $error; ?>
<form method="POST">
    Number of adults:<br />
    <select name="adults">
    <?php foreach($options as $number) { ?>
        <option value="<?php echo $number; ?>"
            <?php echo $number == $adults ? 'selected' : ''; ?>
        >
            <?php echo $number; ?>
        </option>
    <?php } ?>
    </select>
    <input type="submit" value="submit" >
</form>
</body>
</html>

答案 2 :(得分:-1)

获取值并将其存储在数组中,然后创建一个循环以创建select的选项。 如果您使用像symfony这样的框架,那么您可以做得更清洁。