PHP中的无限字段?

0 php scripting field sample

我如何在PHP中无限制的字段?这是场景:

首先,只有2个字段,名为:first name1,last name1

我想要做的是,当我点击"添加"按钮时,它将在新行中添加另外两个字段,字段label/name应该是第一个name2,last name2.当我再次点击时,它将具有名字3,姓氏3,依此类推......

任何人都可以在PHP中给我一些示例脚本吗?我是PHP的新手.

表单应该是HTML格式.如果有人可以提供Ajax示例代码,那将是一个很大的优势.

Sam*_*son 10

这取决于你所说的"场".听起来好像你在谈论的是一个不是PHP的表单,而是HTML.您可以将一个按钮[添加]发回服务器,然后使用另一组表单输入刷新页面.您也可以通过javascript完成此操作,而无需刷新页面.

简单的Javascript(jQuery)示例:

$(document).ready(function(){
  $("input[value='Add']").click(function(event){
    event.preventDefault();
    $("p.field:last").clone().insertAfter("p.field:last");
  });
});

<form method="post">
  <p class="field">
    <input type="text" name="firstname[]" value="" /> 
    <input type="text" name="lastname[]" value="" />
  </p>
  <p>
    <input type="submit" name="submit" value="Add" /> 
    <input type="submit" name="submit" value="Done" />
  </p>
</form>
Run Code Online (Sandbox Code Playgroud)

简单的PHP示例:

我不鼓励你按原样使用它

<?php

  $count = 1;

  if ($_POST["submit"] == "Add") {

    $count = ($_POST["firstname"]) ? (count($_POST["firstname"]) + 1) : 1;

  } else 
  if ($_POST["submit"] == "Done") {

    print "<pre>";
    print_r($_POST["firstname"]);
    print_r($_POST["lastname"]);
    print "</pre>";

  }

?>
<form method="post">
  <?php for($i = 0; $i < $count; $i++) { ?>
  <p class="field">
    <input type="text" name="firstname[]" value="<?php print $_POST["firstname"][$i]; ?>" /> 
    <input type="text" name="lastname[]" value="<?php print $_POST["lastname"][$i]; ?>" />
  </p>
  <?php } ?>
  <p>
    <input type="submit" name="submit" value="Add" /> 
    <input type="submit" name="submit" value="Done" />
  </p>
</form>
Run Code Online (Sandbox Code Playgroud)