Tengo un formulario como el que se muestra a continuación, que está publicado en contact.php, y el usuario puede agregar más dinámicamente con jquery.
<input type="text" name="name[]" />
<input type="text" name="email[]" />
<input type="text" name="name[]" />
<input type="text" name="email[]" />
<input type="text" name="name[]" />
<input type="text" name="email[]" />
Si los hago eco en php con el siguiente código
$name = $_POST['name'];
$email = $_POST['account'];
foreach( $name as $v ) {
print $v;
}
foreach( $email as $v ) {
print $v;
}
Obtendré algo como esto:
nombre1nombre2nombre3email1email2email3
¿Cómo puedo obtener esas matrices en algo como el código siguiente?
function show_Names($n, $m)
{
return("The name is $n and email is $m, thank you");
}
$a = array("name1", "name2", "name3");
$b = array("email1", "email2", "email3");
$c = array_map("show_Names", $a, $b);
print_r($c);
entonces mi salida es así:
El nombre es name1 y el correo electrónico es email1 , gracias
El nombre es name2 y el correo electrónico es email2 , gracias
El nombre es name3 y el correo electrónico es email3 , gracias
gracias por cualquier ayuda o consejo
$emails[1]
corresponde al usuario nombrado$name[1]
? Creo que tuve problemas con esto en el pasado, pero podría estar equivocado. GraciasPor ejemplo, nombrando los campos como
(que también es posible al agregar elementos a través de javascript)
El script php correspondiente podría verse así
fuente
Sé que es un poco tarde ahora, pero podrías hacer algo como esto:
La prueba con:
Esto para mí produjo:
fuente
¿Qué pasa si tienes una variedad de conjuntos de campos?
Agregué un campo oculto para contar el número de conjuntos de campos. El usuario puede agregar o eliminar los campos y luego guardarlos.
fuente
También me encontré con este problema. Dadas 3 entradas: campo [], campo2 [], campo3 []
Puede acceder a cada uno de estos campos de forma dinámica. Dado que cada campo será una matriz, todos los campos relacionados compartirán la misma clave de matriz. Por ejemplo, dados los datos de entrada:
Bob, su correo electrónico y su sexo compartirán la misma clave. Con esto en mente, puede acceder a los datos en un bucle for como este:
Esto también escala. Todo lo que necesita hacer es agregar sus respectivas variables de matriz siempre que necesite agregar nuevos campos.
fuente
Sin embargo, la solución de VolkerK es la mejor para evitar perder pareja entre correo electrónico y nombre de usuario. Entonces tienes que generar código HTML con PHP así:
Cambie $ total_data para adaptarlo a sus necesidades. Para mostrarlo, así:
Suponiendo que los datos se enviaron mediante el método POST.
fuente
No obstante, puede usar el siguiente código como,
fuente
Esta es fácil:
fuente
Usar este método debería funcionar:
fuente