Foros del Web » Programando para Internet » PHP »

Problema al pasar un array por POST

Estas en el tema de Problema al pasar un array por POST en el foro de PHP en Foros del Web. Hola, llevo toda la mañana intentando que me salga ésto y no lo consigo, os pongo en situación: Tengo un formulario que genero dinámicamente con ...
  #1 (permalink)  
Antiguo 17/12/2007, 06:44
 
Fecha de Ingreso: octubre-2005
Mensajes: 52
Antigüedad: 18 años, 6 meses
Puntos: 0
Problema al pasar un array por POST

Hola, llevo toda la mañana intentando que me salga ésto y no lo consigo, os pongo en situación:

Tengo un formulario que genero dinámicamente con el siguiente código:

-----------------------------------------------
<form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<a href="javascript:addLine();">Añadir Linea +</a><br>
<div id="myDiv"></div>
<input type="submit">
</form>
-----------------------------------------------

Con su correspondiente código javascript para generarlos.

------------------------------------------------------
<script language="javascript" type="text/javascript">
// <!--

// Variable de conteo de "Divs"
var count = 0;

// Funcion que agrega una nueva linea
function addLine(){

// Se agrega un numero al conteo
count += 1;

// Div donde se agregara la nueva linea
var content = document.getElementById('myDiv');

// Se crea un nuevo "DIV" que se agregara a content
var divIdName = 'my' + count + 'Div';
var newDiv = document.createElement('div');
newDiv.setAttribute('id', divIdName);

// Se crea un nuevo "INPUT"
var newInput = document.createElement('input');
newInput.type = 'text';
newInput.size = '10';
newInput.name = 'myInput[]';

// Se crea un Link para poder borrar la linea
var newDelete = document.createElement('a');
newDelete.href = 'javascript:delLine("' + divIdName + '")';
newDelete.innerHTML = 'Borrar Linea';

// Se agrega el "INPUT" y el link al "DIV"
newDiv.appendChild(newInput);
newDiv.appendChild(newDelete);
content.appendChild(newDiv);
}

// Se borra la linea solicitada
function delLine(div){
var content = document.getElementById('myDiv');
var remove = document.getElementById(div);
content.removeChild(remove);
}

// -->
</script>
---------------------------------------------------

Y más abajo proceso los datos que contiene la variable POST

------------------------------------
<?php
echo print_r($_POST, true);
?>
-------------------------------------

Bien, el tema esta en que así funciona al pelo, el resultado que me muestra es el contenido del array myInput[] y los datos que contiene.

Pero al hacer el formulario más grande y pedir otros datos que no se generan dinámicamente, como aqui:

<form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="text" name="nombre">
<input type="text" name="apellidos">
<a href="javascript:addLine();">Añadir Linea +</a><br>
<div id="myDiv"></div>
<input type="submit">
</fomr>

Entonces solo me muestra el contenido de los campos nombre y apellidos pero los generados dinámicamente no?

Sabeis por qure puede ser?

De antemano GRACIAS!
  #2 (permalink)  
Antiguo 17/12/2007, 08:53
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Problema al pasar un array por POST

Si ese es el código que utilizas, cambia </fomr> por </form>, puede que este afectando a la visibilidad del formulario.

Saludos.
  #3 (permalink)  
Antiguo 17/12/2007, 09:30
 
Fecha de Ingreso: octubre-2005
Mensajes: 52
Antigüedad: 18 años, 6 meses
Puntos: 0
Re: Problema al pasar un array por POST

No, ha sido un error al pasarlo aqui, la sintaxis está bien y de hecho funciona pero el array myImput esta vacio
  #4 (permalink)  
Antiguo 17/12/2007, 09:46
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Problema al pasar un array por POST

Prueba usar una herramienta como el Web Developer Toolbar de Firefox, agrega unos cuantos combos y usa la opcion de View Source->View Generated Source para que veas como es que se están agregando los combos en tu DOM.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:06.