Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 单表单多个提交到同一数组中_Php_Html_Arrays_Forms_Post - Fatal编程技术网

Php 单表单多个提交到同一数组中

Php 单表单多个提交到同一数组中,php,html,arrays,forms,post,Php,Html,Arrays,Forms,Post,我试图使用$\u POST方法将同一个表单多次(使用不同的值)推送一个表单,直到数组索引为4(或我决定的数字) 因此,我想按submit,将值推入数组,然后刷新页面,重新插入不同的值,等等,直到条件为真 <?php if (!isset($count)) { $person = array( array( 'name' => '', 'surname' => '', 'phoneNu

我试图使用
$\u POST
方法将同一个表单多次(使用不同的值)推送一个表单,直到数组索引为4(或我决定的数字)

因此,我想按submit,将值推入数组,然后刷新页面,重新插入不同的值,等等,直到条件为真

<?php
if (!isset($count)) {
    $person = array(
        array(
            'name' => '',
            'surname' => '',
            'phoneNumber' => ''
        )
    );
}
var_dump($person);
if (!isset($_POST['submit'])) {

    echo "<form action=\"index.php\" method=\"post\">
        <label for=\"name\">Name</label>
        <input type=\"text\" name=\"name\" required>
        <br>
        <label for=\"surname\">Surname</label>
        <input type=\"text\" name=\"surname\" required>
        <br>
        <label for=\"phoneNumber\">Phone Number</label>
        <input type=\"text\" name=\"phoneNumber\" required>
        <br>
        <input type=\"submit\" value=\"Submit\" name=\"submit\">
    </form>";
    $count = 0;
} else {
    $name = $_POST['name'];
    $surname = $_POST['surname'];
    $phoneNumber = $_POST['phoneNumber'];

    if (count($person) <= 2) {
        array_push($person, $name, $surname, $phoneNumber);
        //echo "<meta http-equiv=\"refresh\" content=\"0\">";
        //echo "Sto inserendo persone";
        //echo count($persone);
        echo count($person);
        //var_dump($persone);
        //print_r($persone);
    } else {
        var_dump($person);
    };
}

?>

我正在考虑使用
$\u SESSION
,但我不知道如何使用它


我不想只使用纯PHP的AJAX、jQuery或Javascript。

下面的示例始终显示表单和实际人员数组。如果您提交表单,您的数据将添加到数组中,直到其计数超过三个条目。我想这就是你想要的:

<?php
session_start();

if (!isset($_SESSION['persons'])) {
    $_SESSION['persons'] = [];
}

if(isset($_POST['submit'])) {
  if (count($_SESSION['persons']) <= 2) {
    $_SESSION['persons'][] = array(
      'name' => $_POST['name'],
      'surname' => $_POST['surname'],
      'phoneNumber' => $_POST['phoneNumber']
    );
  }
}
?>

<pre><?php var_dump($_SESSION['persons']); ?></pre>

<form action="index.php" method="post">
  <label for="name">Name</label>
  <input type="text" name="name" required><br>
  <label for="surname">Surname</label>
  <input type="text" name="surname" required><br>
  <label for="phoneNumber">Phone Number</label>
  <input type="text" name="phoneNumber" required><br>
  <input type="submit" value="Submit" name="submit">
</form>
将值推入数组查看
array\u push()
$_SESSION['persons'] = [];