表单数据有困难

时间:2013-07-30 16:31:41

标签: php forms submit

我有3个文本字段,只有一个提交按钮,可以立即发送文本字段的所有数据。但是如何在php中一次发送所有三个文本字段的数据?

     <form>
     for($x=0;$x<3;$x++){
     <input type="text" name="name">
     }
     <input type="submit" name="submit">
     </form>

现在我在for循环中有三个字段,我必须使用单个提交按钮从所有这些字段中提取数据。那我该怎么做呢?

3 个答案:

答案 0 :(得分:0)

您将它们全部放在同一<form>内,并确保它们具有name属性的不同值(或者值以[]结尾)。

答案 1 :(得分:0)

在输入上使用'name'属性允许您执行此操作,例如

<form action='submit.php' method='post'>
    <input type='text' name='one'></input>
    <input type='text' name='two'></input>
    <input type='text' name='three'></input>
    <input type='submit' name='submit' value='Submit!' />
</form>

在你的PHP中,你会做这样的事情

<?php
    if(isset($_POST['submit'])){
        $inputOne = $_POST['one'];
        $inputTwo = $_POST['two'];
        $inputThree = $_POST['three'];

        //Do whatever you want with them
    }
?>

有更好的方法可以做到这一点,但这可能是最容易理解的

<小时/> 如果您希望所有输入具有相同的名称,请执行此操作

<input type='text' name='textinput[]'></input>

使用它代替并循环所有输入,如此

<?php
    foreach($_POST['textinput'] as $input){
        //do something with $input
    }
?>

答案 2 :(得分:0)

我相信你要找的是这个注意名字字段后面的[]

<form>
   for($x=0;$x<3;$x++) {
      <input type="text" name="name[]" />
   }
   <input type="submit" name="submit" />
</form>

然后检索值

$names = $_POST['name'];
foreach( $names as $name ) {
   print $name;
}