如何制作" MadLibs"提交后,表单结果会显示在表单字段下方吗?

时间:2016-04-28 18:32:35

标签: php forms

提前感谢您的帮助。在发布之前我已经搜索了很多,但最终比起初时更加困惑:)

我试图让一个页面包含表单字段,并在按下提交后,生成的故事将用户的表单字段条目插入到故事中。

如果表单字段中的文本仍然存在,那么如果需要更改一两个字,用户就不需要重新输入所有内容,这样会很棒。

我非常感谢你的帮助。希望这会立刻帮助很多人。

<html>
  <head>
    <title>My MadLib</title>
  </head>
    <body>
      <h1>MadLib</h1>
         <?php  if (isset($_POST['action']) && $_POST['action'] == "show"): ?>
  <p>Hello, I am a <?php  echo $_POST['adj']  ?> computer that owns a <?php  echo $_POST['noun']  ?>.</p>
    <?php else : ?>
      <form action="madlib.php" method="post">
        <input type="hidden" name="action" value="show">
          <p>An adjective: <input type="text" name="adj"></p>
    **strong text**      <p>A noun: <input type="text" name="noun"></p>
          <p><input type="submit" value="Go!"></p>
      </form>
    <?php  endif  ?>
  </body>
</html>

1 个答案:

答案 0 :(得分:0)

正如您所说,您不想“保持简单”,您只需将value属性添加到每个<input>中,如下所示:

<html>
  <head>
    <title>My MadLib</title>
  </head>
    <body>
      <h1>MadLib</h1>
<?php
if (isset($_POST['action']) && $_POST['action'] == "show") {
?>
      <p>Hello, I am a <?php echo @$_POST['adj']; ?> computer that owns a <?php echo @$_POST['noun']; ?>.</p>
<?php
} else {
?>
      <form action="madlib.php" method="post">
        <input type="hidden" name="action" value="show">
          <p>An adjective: <input type="text" name="adj" value="<?php echo @$_POST['adj']"; ?> /></p>
          **strong text**
          <p>A noun: <input type="text" name="noun" value="<?php echo @$_POST['noun']"; ?> /></p>
          <p><input type="submit" value="Go!"></p>
      </form>
<?php
}
?>
  </body>
</html>

注意(有时不受欢迎)“@”以防止在$_POST['...']不存在时发出通知。我还在<p>Hello...行中添加了相同内容。