Foros del Web » Programando para Internet » Javascript »

Duda con Javascript + Php - Tablas dinamicas

Estas en el tema de Duda con Javascript + Php - Tablas dinamicas en el foro de Javascript en Foros del Web. Gente, Tengo el siguiente problema. Una página que se llama, pagina1.php. Dicha pagina, tiene el siguiente CODIGO Código: <html> <head> <script> function fun() { var ...
  #1 (permalink)  
Antiguo 22/04/2009, 12:43
 
Fecha de Ingreso: mayo-2003
Mensajes: 312
Antigüedad: 21 años
Puntos: 2
Duda con Javascript + Php - Tablas dinamicas

Gente,
Tengo el siguiente problema.

Una página que se llama, pagina1.php.

Dicha pagina, tiene el siguiente CODIGO

Código:
<html>

<head>

<script>
function fun()
{

var cont = 0;
cont++;



midiv = document.getElementById("uno");
tabla = document.createElement("table");
tabla.setAttribute("width","610");
cuerpo = document.createElement("tbody");
fila = document.createElement("tr");
columna9 = document.createElement("td");
texto9= document.createTextNode("");
columna9.appendChild(texto9);
fila.appendChild(columna9);

cuerpo.appendChild(fila);
tabla.appendChild(cuerpo);
midiv.appendChild(tabla);




midiv = document.getElementById("uno");
tabla = document.createElement("table");
tabla.setAttribute("width","609");

tabla.style.border="1px solid #000080";

cuerpo = document.createElement("tbody");
fila = document.createElement("tr");


columna1 = document.createElement("td");
columna1.setAttribute("border","0");

columna1.style.fontFamily="Verdana";
columna1.style.fontSize="10pt";

texto1= document.createTextNode("Ingresar texto");
columna1.appendChild(texto1);
fila.appendChild(columna1);

columna2 = document.createElement("td");
columna2.setAttribute("border","0");
texto2= document.createElement("textarea");

texto2.setAttribute('rows', '6');
texto2.setAttribute('cols', '70');
texto2.setAttribute('name', 'texto2'+cont);
texto2.setAttribute('id', 'texto2'+cont);

texto2.style.fontFamily="Verdana";
texto2.style.fontSize="10pt";


columna2.appendChild(texto2);
fila.appendChild(columna2);

cuerpo.appendChild(fila);
tabla.appendChild(cuerpo);
midiv.appendChild(tabla);


}

<script>
</head>
<body>

<form method="POST" action="pagina2.php">

<input type="text" name="inputprimero" size="85">

<input type="text" name="inputsegundo" size="85">


<input type="radio" value="ejecutafuncionfun" name="molde" onclick="fun()">


<div id="uno">

<input type="submit" value="Enviar" name="envio">

</form>


</body>
</html>

Bien...
1- El valor de los INPUTS (primero y segundo) se envian correctamente a pagina2.php.

2- El código javascript crea la tabla como lo inputs (de acuerdo a las veces que haga clic sobre el radio) correctamente.

3- LO QUE NECESITARIA, es que TAMBIEN me mandara el VALOR introducido en los INPUTS creados con la FUNCION FUN (dentro del FORM) a pagina2.php.

Desde YA, más que agradecido.

Saludos!
  #2 (permalink)  
Antiguo 22/04/2009, 20:19
Avatar de Dude--  
Fecha de Ingreso: junio-2004
Ubicación: Sevilla - España
Mensajes: 197
Antigüedad: 19 años, 10 meses
Puntos: 4
Respuesta: Duda con Javascript + Php - Tablas dinamicas

Primero define una id para el formulario, luego crea en tu código javascript una variable para "capturar el objeto" ( var formulario = document.getElementById("iddelformulario"); ) y esos objetos que estas creando con DOM insertalos dentro de dicho elemento.
__________________
"El camino empieza renunciando el control y volviéndose flexibles, como una brizna de paja en un huracán."

"Desconozco tanto... es excitante comenzar a nadar en este mar de dudas..."
  #3 (permalink)  
Antiguo 23/04/2009, 07:27
 
Fecha de Ingreso: mayo-2003
Mensajes: 312
Antigüedad: 21 años
Puntos: 2
Respuesta: Duda con Javascript + Php - Tablas dinamicas

Disculpa mi ignorancia, pero... ¿Quedaría así?

En el form (HTML) puse...

<form name="hola" id="hola">

Defini la variable y puse como valor...

<script>
var formulario = document.getElementById("hola");
</script>


Dentro de la funcion FUN, tambien coloque, luego de midiv.appendChild(tabla); lo siguiente:

formulario.appendChild(midiv);


Sin embargo, ahora ni siquiera me funciona el javascript.

Insisto, disculpa mi ignorancia, pero... ¿Que estoy haciendo mal?

MILES DE GRACIAS de parte de este novato.
  #4 (permalink)  
Antiguo 23/04/2009, 15:35
Avatar de Dude--  
Fecha de Ingreso: junio-2004
Ubicación: Sevilla - España
Mensajes: 197
Antigüedad: 19 años, 10 meses
Puntos: 4
Respuesta: Duda con Javascript + Php - Tablas dinamicas

Deberías pegar nuevamente el código después de la modificación, para que pudieramos ver mejor donde puede estar el error, de momento como no lo has hecho he revisado el código que posteaste al principio y he encontrado el siguiente error:

[
Código javascript:
Ver original
  1. midiv.appendChild(tabla);
  2. }
  3. <script>

La etiqueta <script> no la has cerrado bien, si te fijas falta la "/" para que quede </script>
__________________
"El camino empieza renunciando el control y volviéndose flexibles, como una brizna de paja en un huracán."

"Desconozco tanto... es excitante comenzar a nadar en este mar de dudas..."
  #5 (permalink)  
Antiguo 23/04/2009, 15:51
Avatar de Dude--  
Fecha de Ingreso: junio-2004
Ubicación: Sevilla - España
Mensajes: 197
Antigüedad: 19 años, 10 meses
Puntos: 4
Respuesta: Duda con Javascript + Php - Tablas dinamicas

Por cierto otro error... como has declarado la variable "cont" = "0" dentro de la función todos los textarea que creas tienen la misma id, ya que cuando llamas a la función vuelves a definir "cont" como "0", es decir machaca el valor que pudiera tener "cont" antes de entrar en la función y lo pone a "0" y luego al incrementarlo en "1" siempre es "0"+"1" = "1" por lo que siempre optienes las ids de los objetos como "text21". Como tendrás varios textareas con las misma id y las ids deben ser únicas para cada objeto solo se enviarán los datos del último textbox creado. Lo que tienes que hacer es colocar la inicialización de "cont" antes de la función, así optendrás los ids correctos ( text21, text22, etc...) tal que así:
Código javascript:
Ver original
  1. var cont = 0;
  2.     function fun()
  3.     {
  4.     var formulario = document.getElementById("formulario");
  5.     cont++;

Con esos dos arreglos ya debería funcionarte correctamente.
__________________
"El camino empieza renunciando el control y volviéndose flexibles, como una brizna de paja en un huracán."

"Desconozco tanto... es excitante comenzar a nadar en este mar de dudas..."

Última edición por Dude--; 23/04/2009 a las 16:14
  #6 (permalink)  
Antiguo 24/04/2009, 09:28
 
Fecha de Ingreso: mayo-2003
Mensajes: 312
Antigüedad: 21 años
Puntos: 2
Respuesta: Duda con Javascript + Php - Tablas dinamicas

Realmente te agradezco de corazon la molestia que te estas tomando al instruirme...
Estoy en etapa de pruebas... Por lo cual, pido pistas para ver de resolverlo.
No se si he logrado solucionar el problema o no, prometo comunicarlo, pero...
Para ver si esta funcionando, me gustaria sacarlo por php.

Es decir, tengo el formulario, con el action que va a la misma pagina.

Con PHP, veo si han hecho clic sobre el SUBMIT, hasta ahi todo bien...

Ahora supongamos que he creado tres inputs, siendo:

Texto21
Texto22
Texto23

Como hago para sacrlo e imprimirlo via PHP. Se me ocurre con WHILE, pero no se que ponerle, ya que el numero de los INPUTS creados al hacer clic sobre el radio podrian ser: 0, 1, 30 o 1000.

Se entiende... Podrias orientarme con esto?!

De corazon... MUY AGRADECIDOOO
  #7 (permalink)  
Antiguo 08/05/2009, 01:56
 
Fecha de Ingreso: mayo-2009
Mensajes: 1
Antigüedad: 15 años
Puntos: 0
Respuesta: Duda con Javascript + Php - Tablas dinamicas

Buenos días,

Yo también tengo el mismo problema. No sé si se puede hacer. La verdad es que no habia tocado nunca el php hasta ahora.

si lo has podido solucionar, podrias explicar la solución.

Muchas gracias
  #8 (permalink)  
Antiguo 23/08/2009, 21:12
 
Fecha de Ingreso: agosto-2009
Ubicación: Jalisco,Mexico
Mensajes: 28
Antigüedad: 14 años, 8 meses
Puntos: 2
Respuesta: Duda con Javascript + Php - Tablas dinamicas

Hola..
lo que pueden hacer son dos cosas:

1.- pueden mandar en un input de tipo hidden el numero de campos que envian y recibirlo con php y asi hacer lo que necesiten ya sea con un for o con un while

con javascript seria asi:

primero creas el input
<input type="hidden" id="cont" name="cont" value="" />

despues con javascript le das el valor
contador = document.getElementById("cont");
contador.value = cont;

2.- la otra opcion es mandarlos todos con un mismo id pero como si fueran un array y recibirlo con php con foreach

en lugar de agregarle el cont al id de los input solo ponles corchetes 'texto2[]'

$inputs=$_POST['texto2'];
$cont=1;
foreach($inputs as $value ){
$valor_input.$cont=$value;
$cont++;
}

asi tendras tantas variables como valores hubieses enviado.

espero les sirva
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 12:35.