Отправка нескольких форм одновременно с одной и той же переменной для каждого input с php


я новичок в php, и я не знаю, как отображать 5 экранных записей, которые я сохранил в массиве, я знаю, что у меня есть ошибки, я ценю, если они помогут мне сделать это и исправить мои ошибки

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1">
    <title>Formulario</title>
    <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
    <link rel="stylesheet" type="text/css" href="css/styles.css">
    <script type="text/javascript" src="js/bootstrap.min.js" ></script>
</head>
<body>
<div>
    <legend>Formulario</legend>
    </div>
<div class="container">
<div id="div1" class="row">
<div class="col-lg-6">
<form method="POST" >
    <h4>Persona 1</h4>
    <div id="div2" >
<div class="form-group" >
        <label for="nombre">Nombre(s): </label>
        <input type="text" class="form-control" id="nombre" name="nombre" placeholder="Nombre">


        <label for="apellido">Apellidos: </label>
        <input type="text" class="form-control" id="apellido" name="apellido" placeholder="Apellidos">


        <label for="TipoId">Tipo De Documento: </label>
        <select name="TipoId" id="TipoId" class="form-control">
            <option></option>
            <option>Cedula De Ciudadania</option>
            <option>Cedula De Extrangeria</option>
            <option>Tarjeta De Identidad</option>
            <option>Registro Civil De Nacimiento</option>
        </select>

        <label for="apellido">Documento: </label>
        <input type="text" class="form-control" id="Id" name="Id" placeholder="Identifcación">

      <label for="salario">Salario: </label>
      <input type="number" class="form-control" name="salario" id="salario" placeholder="Salario que devenga">
    </div>
</div>
<div class="form-group">
    <input type="submit" name="submit" id="submit" value="Enviar" class="btn btn-primary">
</div>
</form>
</div>
<div class="col-lg-6">
<form>
        <h4>Persona 2</h4>
    <div style="width:35%;">
<div class="form-group" >
        <label for="nombre">Nombre(s): </label>
        <input type="text" class="form-control" id="nombre1" name="nombre1" placeholder="Nombre" style="di">


        <label for="apellido">Apellidos: </label>
        <input type="text" class="form-control" id="apellido1" name="apellido1" placeholder="Apellidos">


        <label for="TipoId">Tipo De Documento: </label>
        <select name="TipoId1" id="TipoId1" class="form-control">
            <option></option>
            <option>Cedula De Ciudadania</option>
            <option>Cedula De Extrangeria</option>
            <option>Tarjeta De Identidad</option>
            <option>Registro Civil De Nacimiento</option>
        </select>

        <label for="apellido">Documento: </label>
        <input type="text" class="form-control" id="Id1" name="Id1" placeholder="Identifcación">

      <label for="salario">Salario: </label>
      <input type="number" class="form-control" name="salario1" id="salario1" placeholder="Salario que devenga">
    </div>
</div>
<div class="form-group">
    <input type="submit" name="submit1" id="submit1" value="Enviar" class="btn btn-primary">
</div>
</form>
</div>
<div class="col-lg-6">
<form>
            <h4>Persona 3</h4>
    <div style="width:35%;">
<div class="form-group" >
        <label for="nombre">Nombre(s): </label>
        <input type="text" class="form-control" id="nombre2" name="nombre2" placeholder="Nombre" style="di">


        <label for="apellido">Apellidos: </label>
        <input type="text" class="form-control" id="apellido2" name="apellido2" placeholder="Apellidos">


        <label for="TipoId">Tipo De Documento: </label>
        <select name="TipoId2" id="TipoId2" class="form-control">
            <option></option>
            <option>Cedula De Ciudadania</option>
            <option>Cedula De Extrangeria</option>
            <option>Tarjeta De Identidad</option>
            <option>Registro Civil De Nacimiento</option>
        </select>

        <label for="apellido">Documento: </label>
        <input type="text" class="form-control" id="Id2" name="Id2" placeholder="Identifcación">

      <label for="salario">Salario: </label>
      <input type="number" class="form-control" name="salario2" id="salario2" placeholder="Salario que devenga">
    </div>
</div>
<div class="form-group">
    <input type="submit" name="submit2" id="submit2" value="Enviar" class="btn btn-primary">
</div>
</form>
</div>
<div class="col-lg-6 ">
<form>
        <h4>Persona 4</h4>
    <div style="width:35%;">
<div class="form-group" >
        <label for="nombre">Nombre(s): </label>
        <input type="text" class="form-control" id="nombre3" name="nombre3" placeholder="Nombre" style="di">


        <label for="apellido">Apellidos: </label>
        <input type="text" class="form-control" id="apellido3" name="apellido3" placeholder="Apellidos">


        <label for="TipoId">Tipo De Documento: </label>
        <select name="TipoId3" id="TipoId3" class="form-control">
            <option></option>
            <option>Cedula De Ciudadania</option>
            <option>Cedula De Extrangeria</option>
            <option>Tarjeta De Identidad</option>
            <option>Registro Civil De Nacimiento</option>
        </select>

        <label for="apellido">Documento: </label>
        <input type="text" class="form-control" id="Id3" name="Id3" placeholder="Identifcación">

      <label for="salario">Salario: </label>
      <input type="number" class="form-control" name="salario3" id="salario3" placeholder="Salario que devenga">
    </div>
</div>
<div class="form-group">
    <input type="submit" name="submit3" id="submit3" value="Enviar" class="btn btn-primary">
</div>
</form>
</div>
<div class="col-lg-6 ">
<form>
        <h4>Persona 5</h4>
    <div style="width:35%;">
<div class="form-group" >
        <label for="nombre">Nombre(s): </label>
        <input type="text" class="form-control" id="nombre4" name="nombre4" placeholder="Nombre" style="di">


        <label for="apellido">Apellidos: </label>
        <input type="text" class="form-control" id="apellido4" name="apellido4" placeholder="Apellidos">


        <label for="TipoId">Tipo De Documento: </label>
        <select name="TipoId4" id="TipoId4" class="form-control">
            <option></option>
            <option>Cedula De Ciudadania</option>
            <option>Cedula De Extrangeria</option>
            <option>Tarjeta De Identidad</option>
            <option>Registro Civil De Nacimiento</option>
        </select>

        <label for="apellido">Documento: </label>
        <input type="text" class="form-control" id="Id4" name="Id4" placeholder="Identifcación">

      <label for="salario">Salario: </label>
      <input type="number" class="form-control" name="salario4" id="salario4" placeholder="Salario que devenga">
    </div>
</div>
<div class="form-group">
    <input type="submit" name="submit4" id="submit4" value="Enviar" class="btn btn-primary">
</div>
</form>
</div>
</div>
</div>
<br>
<div class="form-group" style="width:100%;height: 100%;background: #fff;border-radius: 5px; width: 50%;height: 50%;box-shadow:0px 0px 5px rgba(0,0,0, .5); padding: 30px;margin: 0 auto; ">
    <p>Los datos ingresados fueron:</p>
    <p>Nombre(s): {$nombre}</p>
    <p>Apellido: {$apellido}</p>
    <p>Tipo de documento: {$TipoId}</p>
    <p>Identificación: {$Id}</p>
    <p>Salario que devenga: {$salario}</p>
    <p>---------------------------------------</p>
</div>
</body>
</html>

Здесь я оставляю код

<?php 
// require 'templates/index.html';
require 'Smarty/libs/Smarty.class.php';

$smarty=new smarty;

$smarty->template_dir = 'templates/';
$smarty->compile_dir = 'templates_c/';
$smarty->cache_dir = 'cache/';

// $smarty->template_dir = $_SERVER["DOCUMENT_ROOT"].'/ciclosarray/templates/';
// $smarty->compile_dir = $_SERVER["DOCUMENT_ROOT"].'/ciclosarray/templates_c/';
// $smarty->cache_dir = $_SERVER["DOCUMENT_ROOT"].'/ciclosarray/cache/';
$salario=$_POST['salario'];
$nombre=$_POST['nombre'];
$apellido=$_POST['apellido'];
$Id=$_POST['Id'];
$TipoId=$_POST['TipoId'];
$CantReg=$_POST['CantReg'];


$smarty->assign('nombre',$nombre);
$smarty->assign('apellido',$apellido);
$smarty->assign('salario',$salario);
$smarty->assign('Id',$Id);
$smarty->assign('TipoId',$TipoId);
$smarty->assign('CantReg',$CantReg);

if (isset($_POST['submit1'])) {

    for ($i=0; $i <$CantReg ; $i++) { 

        $registros [$i] = array(
    'CantReg'=>"".$_POST['CantReg']."",
    'nombre'=>"".$_POST['nombre']."",
    'apellido'=>"".$_POST['apellido']."",
    'TipoId'=>"".$_POST['TipoId']."",
    'Id'=>"".$_POST['Id']."",   
    'salario'=>"".$_POST['salario'].""
);

        var_dump($registro);

    }


}


$pagina = $smarty->display("templates/index.html");


return $pagina;


 ?>

Спасибо, надеюсь, вы можете мне помочь: D.

Author: Marcos, 2019-07-31

1 answers

В одном form вы помещаете оператор php, который "печатает" 5 раз inputs, и вы можете поместить квадратные скобки в имя каждого input например ... name= " name []", чтобы указать, что это массив. затем, если вы хотите увидеть, что хранится в массиве, вы можете использовать PHP print_r


<?php
if($_POST){
    $array = array($_POST['nombre'],$_POST['apellido']);
    print_r($array);
}
?>
<form id="form1" name="form1" method="post" action="">
<?php 
for ($i = 1; $i <= 5; $i++) { ?>
<input type="text" name="nombre[]"><br />
<input type="text" name="apellido[]"><br />
<?php }?>
<input type="submit" value="Enviar" />
</form>

 3
Author: JCLXS, 2019-07-31 22:03:37