两个动作表单和两个提交按钮,如何保持值?

时间:2015-06-22 10:29:56

标签: html forms submit action

我在页面中有2个操作表单和2个提交按钮。

1是缩放级别

1是以秒为单位的刷新率

当我点击提交缩放时,刷新率将被重置 当我按下提交刷新率时,缩放级别被重置

当一个下拉列表设置为某个值时,如何保持对方的值?

我认为这是一个普通的问题,因为在那里努力工作,所以在这里得到一些很好的指导可以很好的解释......

代码是:

<?php
        $submittedValue = "";
        $value0 = 1;
        $value1 = 1.2;
        $value2 = 1.5;
        $value3 = 2;
        if (isset($_POST["FruitList"])) {
            $submittedValue = $_POST["FruitList"];
        }
        ?>
        <form action="example3b2vandaag.php" name="fruits" method="post">
        <select project="FruitList" id="FruitList" name="FruitList">
         <option value = "<?php echo $value0; ?>"<?php echo ($value0 == $submittedValue)?" SELECTED":""?>><?php echo "off"; ?></option>
         <option value = "<?php echo $value1; ?>"<?php echo ($value1 == $submittedValue)?" SELECTED":""?>><?php echo $value1; ?></option>
         <option value = "<?php echo $value2; ?>"<?php echo ($value2 == $submittedValue)?" SELECTED":""?>><?php echo $value2; ?></option>
         <option value = "<?php echo $value3; ?>"<?php echo ($value3 == $submittedValue)?" SELECTED":""?>><?php echo $value3; ?></option>
        </select>
        <input type="submit" name="submit" id="submit" value="Set zoom level" />
        </form>






        <?php
        $submittedValue = "";
        $value0 = 1000;
        $value1 = 20000;
        $value2 = 30000;
        $value3 = 90000;
        if (isset($_POST["FruitList2"])) {
            $submittedValue = $_POST["FruitList2"];
        }
        ?>
         <form action="example3b2vandaag.php" name="fruits2" method="post">
        <select project="FruitList2" id="FruitList2" name="FruitList2">
         <option value = "<?php echo $value0; ?>"<?php echo ($value0 == $submittedValue)?" SELECTED":""?>><?php echo $value0; ?></option>
         <option value = "<?php echo $value1; ?>"<?php echo ($value1 == $submittedValue)?" SELECTED":""?>><?php echo $value1; ?></option>
         <option value = "<?php echo $value2; ?>"<?php echo ($value2 == $submittedValue)?" SELECTED":""?>><?php echo $value2; ?></option>
         <option value = "<?php echo $value3; ?>"<?php echo ($value3 == $submittedValue)?" SELECTED":""?>><?php echo $value3; ?></option>
        </select>
        <input type="submit" name="submit" id="submit" value="Set refresh milliseconds" />
        </form>

1 个答案:

答案 0 :(得分:2)

I don't see any reason why you would want two forms, you can put the two select boxes into one form. And please don't use unintelligent variable names such as $value0, $submittedValue and $Fruitlist, because this isn't about fruits.

Here are the two select boxes into one form:

<?php

    $zoom = "";
    $zoom0 = 1;
    $zoom1 = 1.2;
    $zoom2 = 1.5;
    $zoom3 = 2;
    $refresh = "";
    $refresh0 = 1000;
    $refresh1 = 20000;
    $refresh2 = 30000;
    $refresh3 = 90000;

    if (isset($_POST["zoom"])) {
        $zoom = $_POST["zoom"];
    }
    if (isset($_POST["refresh"])) {
        $refresh = $_POST["refresh"];
    }
    ?>
    <form action="testForm.php" name="controlpanel" method="post">
    ZoomLevel:<br />
    <select project="ControlPanel" id="ControlPanel" name="zoom">
     <option value = "<?php echo $zoom0; ?>"<?php echo ($zoom0 == $zoom)?" SELECTED":""?>><?php echo "off"; ?></option>
     <option value = "<?php echo $zoom1; ?>"<?php echo ($zoom1 == $zoom)?" SELECTED":""?>><?php echo $zoom1; ?></option>
     <option value = "<?php echo $zoom2; ?>"<?php echo ($zoom2 == $zoom)?" SELECTED":""?>><?php echo $zoom2; ?></option>
     <option value = "<?php echo $zoom3; ?>"<?php echo ($zoom3 == $zoom)?" SELECTED":""?>><?php echo $zoom3; ?></option>
    </select>
    <br />
    Refresh rate:<br />
    <select project="ControlPanel" id="ControlPanel" name="refresh">
     <option value = "<?php echo $refresh0; ?>"<?php echo ($refresh0 == $refresh)?" SELECTED":""?>><?php echo $refresh0; ?></option>
     <option value = "<?php echo $refresh1; ?>"<?php echo ($refresh1 == $refresh)?" SELECTED":""?>><?php echo $refresh1; ?></option>
     <option value = "<?php echo $refresh2; ?>"<?php echo ($refresh2 == $refresh)?" SELECTED":""?>><?php echo $refresh2; ?></option>
     <option value = "<?php echo $refresh3; ?>"<?php echo ($refresh3 == $refresh)?" SELECTED":""?>><?php echo $refresh3; ?></option>
    </select><br />

    <input type="submit" name="submit" id="submit" value="Set configurations" />
    </form>

To use the data you get from the form you can use $_POST["zoom"] and $_POST["refresh"], because that's what the name properties of the select boxes are. See http://www.w3schools.com/php/php_form_complete.asp for more information on html forms and how to use the $_POST data.