【问题标题】:How to fill different form fields with values using php如何使用php用值填充不同的表单字段
【发布时间】:2016-03-02 21:35:16
【问题描述】:

我在填写 3 种类型的表单输入时遇到问题。单选按钮、选择(下拉列表)和文本区域。

<textarea name="kommentar" cols="25" rows="7" value="<?php echo "$comment";?>" required></textarea>

<select name="interesse" required>
<option disabled selected>Bitte auswählen</option>
<option>Java</option>
<option>PHP</option>
<option>C++</option>
<option>Ruby</option>
<option>SQL</option>
<option>PLSQL</option>
</select>

<fieldset>
<label for="bewertung">
<input type="radio" name="bewertung" value="1" required />1
<input type="radio" name="bewertung" value="2" required />2
<input type="radio" name="bewertung" value="3" required />3
<input type="radio" name="bewertung" value="4" required />4
<input type="radio" name="bewertung" value="5" required />5
<input type="radio" name="bewertung" value="6" required />6
</label>
</fieldset>

我需要一个预先选择的单选按钮,选择的下拉列表条目,并且还应该填写评论字段(这还不工作)。 怎么可能,用 php 变量中的值填充这些值?

【问题讨论】:

    标签: php html


    【解决方案1】:

    &lt;textarea&gt; 不支持value 属性,在&lt;textarea&gt;&lt;/textarea&gt; 标签之间回显您的$comment

    使用条件逻辑来勾选单选按钮和选择框选项:

    <option value="bar" name="foobar" <?php echo ($foobar == "bar" ? "selected=\"selected\"" : ""); ?>>bar</option>
    
    <input type="radio" value="foo" name="foobar" <?php echo ($foobar == "foo" ? "checked=\"checked\"" : ""); ?> /> foo
    

    更新

    应用于您的原始代码:

    <?php
    $interesse = "PHP";
    $bewertung = 4;
    ?>
    
    <textarea name="kommentar" cols="25" rows="7"  required><?php echo "$comment";?></textarea>
    
    <select name="interesse" required>
    <option disabled>Bitte auswählen</option>
    <option <?php echo ($interesse == "Java" ? "selected=\"selected\"" : ""); ?>>Java</option>
    <option <?php echo ($interesse == "PHP" ? "selected=\"selected\"" : ""); ?>>PHP</option>
    <option <?php echo ($interesse == "C++" ? "selected=\"selected\"" : ""); ?>>C++</option>
    <option <?php echo ($interesse == "Ruby" ? "selected=\"selected\"" : ""); ?>>Ruby</option>
    <option <?php echo ($interesse == "SQL" ? "selected=\"selected\"" : ""); ?>>SQL</option>
    <option <?php echo ($interesse == "PLSQL" ? "selected=\"selected\"" : ""); ?>>PLSQL</option>
    </select>
    
    <fieldset>
    <label for="bewertung">
    <input type="radio" name="bewertung" value="1" required <?php echo ($bewertung == 1 ? "checked=\"checked\"" : ""); ?> />1
    <input type="radio" name="bewertung" value="2" required <?php echo ($bewertung == 2 ? "checked=\"checked\"" : ""); ?> />2
    <input type="radio" name="bewertung" value="3" required <?php echo ($bewertung == 3 ? "checked=\"checked\"" : ""); ?> />3
    <input type="radio" name="bewertung" value="4" required <?php echo ($bewertung == 4 ? "checked=\"checked\"" : ""); ?> />4
    <input type="radio" name="bewertung" value="5" required <?php echo ($bewertung == 5 ? "checked=\"checked\"" : ""); ?> />5
    <input type="radio" name="bewertung" value="6" required <?php echo ($bewertung == 6 ? "checked=\"checked\"" : ""); ?> />6
    </label>
    </fieldset>
    

    这将选择“PHP”选项并选中第 4 个单选按钮。

    【讨论】:

      【解决方案2】:

      基本上,您所要做的就是在某些内容中回显。

      对于 textarea,我们希望在 textarea 打开/关闭标签之间的注释中回显。

      <textarea name="kommentar" cols="25" rows="7" required> <?php echo "$comment";?> </textarea>
      

      对于单选按钮,您使用单词“checked”(或checked="checked")来声明一个选中的选项。您可以根据需要检查具体的事情,并在应该在的地方回显检查的单词。

      <input type="radio" name="bewertung" value="1" required <?php echo "checked"; ?> />
      

      对于 select 元素,您使用单词“selected”(或 selected="selected")来声明选定选项。您可以根据需要检查具体的内容,并在应在的位置回显所选单词。

      <option <?php echo "selected"; ?> >Java</option>
      

      【讨论】:

      • 如果没有任何条件,这只会在所有 OP 的选项/输入上回显选择/检查。
      • @WheatBeak 我知道这一点。这就是为什么我说他必须根据需要检查。
      猜你喜欢
      • 1970-01-01
      • 2019-11-16
      • 2012-06-16
      • 1970-01-01
      • 2020-03-17
      • 2022-01-26
      • 1970-01-01
      • 2021-11-08
      • 1970-01-01
      相关资源
      最近更新 更多