使用PHP发送表单输入值以在下一页的列表中选择一个选项

时间:2018-09-26 02:05:30

标签: javascript php

我正在尝试将输入值发送到带有选择列表的另一页。无论如何,是否可以根据上一页输入的值在选择下拉列表中选择一个选项?这可能吗?我试图思考,如果没有JavaScript,这似乎是不可能的。谢谢你的帮助。我在下面添加了一些代码可能会有所帮助。

<form action="shoppingcart.php">
    <input name="bed_range" type="range" min="1" max="6" value="1" class="slider" id="bed_service" oninput="sliderChange(this.value);">
    <input name="bath_range" type="range" min="1" max="6" value="1" class="slider" id="bath_service" oninput="sliderChange2(this.value);">
    </form>

// then on following page

<select name="bdrms" class="calculate_bdrms" id="bdrms" onchange="">
        <option>One Bedroom Home</option>
        <option>Two Bedroom Home</option>
        <option>Three Bedroom Home</option>
        <option>Four Bedroom Home</option>
        <option>Five Bedroom Home</option>
        <option>Six Bedroom Home</option>
</select>

我希望能够根据发送的输入来操纵所选选项...这可能吗?任何帮助是极大的赞赏。谢谢。

1 个答案:

答案 0 :(得分:1)

<form action="shoppingcart.php">
    <input name="bed_range" type="range" min="1" max="6" value="1" class="slider" id="bed_service" oninput="sliderChange(this.value);">
    <input name="bath_range" type="range" min="1" max="6" value="1" class="slider" id="bath_service" oninput="sliderChange2(this.value);">
    <input type="submit">
</form>

对于下一页;如果您使用的格式像这样,则值将出现在URL中,则可以使用$_GET['name_of_input']来获取它。

<?php
EDIT: As stated by FunkFortyNiner you should also check if the data is present or not to prevent errors. like 

if (isset($_GET['bed_range']) && !empty($_GET['bed_range'])) {
    $select1 = $_GET['bed_range']; 
}
if (isset($_GET['bath_range']) && !empty($_GET['bath_range'])) {
    $select2 = $_GET['bath_range'];
}     

//data is now $select1 and $select 2. Manipulate them however you like

?>

<select name="bdrms" class="calculate_bdrms" id="bdrms" onchange="">
        <option <?php if ( isset($select1) && $select1 === 1) echo 'selected';?> >One Bedroom Home</option>
        <option <?php if ( isset($select1) && $select1 === 2) echo 'selected';?>>Two Bedroom Home</option>
        <option <?php if ( isset($select1) && $select1 === 3) echo 'selected';?>>Three Bedroom Home</option>
        <option <?php if ( isset($select1) && $select1 === 4) echo 'selected';?>>Four Bedroom Home</option>
        <option <?php if ( isset($select1) && $select1 === 5) echo 'selected';?>>Five Bedroom Home</option>
        <option <?php if ( isset($select1) && $select1 === 6) echo 'selected';?>>Six Bedroom Home</option>
</select>
相关问题