php发布到电子邮件

时间:2013-07-17 19:18:57

标签: php forms post

所以我有这个代码。最高输入确实被发送到电子邮件但底部没有(Tank I.D.)。我需要让第二部分工作。我看了一个类似的地方,它用$ v ['example']代替$ _POST ['example'],我不完全确定它会有什么区别。

Gallons of required storage:<br />
<input name="required_storage" type="text" size="10" value="<?php if(isset($_POST['sub'],$_POST['required_storage'])){echo $_POST['required_storage'];} ?>" /><br />

Tank I.D. in feet (O.D. will be 4"-10" larger than I.D.) <br />
<select name="Tank I.D. in feet" value="<?php if(isset($_POST['sub'],$_POST['Tank I.D. in feet'])){echo $_POST['Tank I.D. in feet'];} ?>">
    <option value="26 inches">26"</option>
    <option value="30 inches">30"</option>
    <option value="3'">3'</option>
    <option value="4'">4'</option>
    <option value="5'">5'</option>
    <option value="6'">6'</option>
    <option value="7.8'">7.8'</option>
    <option value="9.2'">9.2'</option>
    <option value="11.12'">11.12'</option>
    <option value="13.12'">13.12'</option>
    </select>

加上我没有名为sub的项目,但推荐给我的代码总是包含if(isset($_POST['sub'],$_POST['option name']))任何人都可以说明为什么我需要它?

1 个答案:

答案 0 :(得分:0)

让我看看能不能给你一个更好的例子。仅仅因为你是PHP的新手,它不会成为一个糟糕的问题,你只需要处理你的逻辑和PHP语法。

<?php
    $options = array(
        "26 inches" => "26\"",
        "30 inches" => "30\"",
        "3 feet" => "3'",
        // put all the rest here
    );
?>

Gallons of required storage:<br />

<input name="required_storage" type="text" size="10" value="<?php echo array_key_exists('required_storage', $_POST) ? $_POST['required_storage'] : ''; ?>" /><br />

Tank I.D. in feet (O.D. will be 4"-10" larger than I.D.) <br />
<select name="tank_feet">
<?php foreach ($options as $key => $val): ?>
    <option value="<?php echo $key; ?>"<?php echo ($val == $_POST['tank_feet'] ? ' selected="selected"' : ''); ?>><?php echo $val; ?></option>
<?php endforeach; ?>
</select>