Foros del Web » Programando para Internet » Javascript »

ayuda con java script

Estas en el tema de ayuda con java script en el foro de Javascript en Foros del Web. bueno les comento mi problema, lo que pasa es q tengo una funcion en java script la cual me genera filas dianmicas y tambien elimina,esta ...
  #1 (permalink)  
Antiguo 07/07/2010, 20:11
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
ayuda con java script

bueno les comento mi problema, lo que pasa es q tengo una funcion en java script la cual me genera filas dianmicas y tambien elimina,esta funcion es llamda atravez de un boton todo bien por el mometo.
Pero mi consulta es como hacer para guardar las filas que se vayan creando y eliminarlas cuando sea necesario tod esto en una bd/mysql, si alguien me pudiera decir como u orientarme al respecto se lo agrdeseria mucho.

aka dejo el codigo:

<html>
<head>
<script language='javascript' type='text/javascript'>
/*variable posicioncampo,sirve para marcar cuantos campos se han guardado dinamicamente.
La inicializamos en 1, ya que la primera llamada ocurrirá cuando no hayan campos agregados*/
var posicionCampo=1;

/*declaramos funcion agregar usuario */
function agregarUsuario()
{

/* variable llamada nuevaFila y a ella le asignamos la recuperación del elemento HTML designado por el id tablaUsuarios. En este caso, la tabla en la que manejamos los campos dinámicamente y llamamos a la función insertRow para agregar una fila */
nuevaFila = document.getElementById("tablaUsuarios").insertRow (-1);

/* Asignamos a la propiedad id de nuevaFila el valor de posicionCampo, que inicializamos en 1 */
nuevaFila.id=posicionCampo;

/*Luego en otra variable llamada nuevaCelda, agregaremos una celda a la tabla, mediante la función insertCell */
nuevaCelda=nuevaFila.insertCell(-1);

/* Con la celda creada, insertamos dinámicamente un campo de texto, el cual almacenaremos en un array llamado nombre, con una posición equivalente a la variable posicionCampo. Una vez terminado, repetimos la acción para el sitio Web y correo, asignando al array respectivo */
nuevaCelda.innerHTML='<td><input type="text" size="15" name="nombre["+posicionCampo+"]" ></td>';

nuevaCelda=nuevaFila.insertCell(-1);
nuevaCelda.innerHTML='<td> <input type="text" size="10" name="web["+posicionCampo+"]" ></td>';
nuevaCelda=nuevaFila.insertCell(-1);
nuevaCelda.innerHTML='<td> <input type="text" size="10" name="correo["+posicionCampo+"]" ></td>';
/* Finalmente añadimos una última celda para las acciones y ahí agregamos un botón llamado Eliminar, el cual al ser presionado (definiendo la propiedad onClick), llamará a una función eliminarUsuario, pasando como parámetro la fila correspondiente */
nuevaCelda=nuevaFila.insertCell(-1);

nuevaCelda.innerHTML='<td><input type="button" value="Eliminar" onclick="eliminarUsuario(this)"></td>';

/* Incrementamos el valor de posicionCampo para que empiece a contar de la fila siguiente */
posicionCampo++;
}

/* Definimos la función eliminarUsuario, la cual se encargará de quitar la fila completa del formulario. No es necesario hacer modificaciones sobre este código */
function eliminarUsuario(obj){

var oTr = obj;
while(oTr.nodeName.toLowerCase()!="tr")
{
oTr=oTr.parentNode;
}
var root = oTr.parentNode;
root.removeChild(oTr);
}
</script>

<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="">
<table id="tablaUsuarios">
<tr>
<td width="175">Nombre</td>
<td width="175">Sitio Web</td>
<td width="100">Correo</td>
</tr>
<td align=“right”>
<input type="button" onClick="agregarUsuario()"
value="A&ntilde;adir usuario" >
</td>
</table>

</form>
</body>
</html>

Última edición por lobezno_1421; 08/07/2010 a las 16:53
  #2 (permalink)  
Antiguo 08/07/2010, 05:11
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 3 meses
Puntos: 126
Respuesta: ayuda con java script

Hola

Estás hablando de hacer INSERT y DELETE de registros en la bd, así que tendrás que hacerlo del lado del servidor. Para poder hacer el insert de todos los campos, los campos han de tener el mismo name. Después para recoger todos los valores de lo campos, en ASP
Código ASP:
Ver original
  1. For Each campo in Request.Form
  2. valCampos = valCampos & Request.Form(campo)
  3. Next
en PHP
Código PHP:
Ver original
  1. $valCampos = array($_POST["nombre_de_los_campos"]);

Suerte

PD: Usa las etiquetas de código para una mejor lectura
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 08/07/2010, 06:35
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: ayuda con java script

exactamente hacer insert y delete de resgistros en bd

voi a probar como me dices,pero una consulta debo hacer un ciclo for para guardar los datos cierto??

gracias(y)
  #4 (permalink)  
Antiguo 08/07/2010, 06:49
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 3 meses
Puntos: 126
Respuesta: ayuda con java script

Hola

Cita:
Iniciado por lobezno_1421 Ver Mensaje
exactamente hacer insert y delete de resgistros en bd

voi a probar como me dices,pero una consulta debo hacer un ciclo for para guardar los datos cierto??

gracias(y)
Con los valores ya recogido tal y como te indiqué anteriormente, ahora tendrás que crear, en tu caso 3 arrays, para insertar en el primero todos los valores del primer campo, en el segundo array los valores del segundo, etc.. Una vez rellenado esos array, atacas a la bd una vez tras otra, con un ciclo, hasta el límite superior de los array

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 08/07/2010, 17:19
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: ayuda con java script

si es que entendi bien lo primero que devo hacer es recoger los valores de la funcion java y pasarla a php, bueno esto es lo que hise pero no estoy seguro si esta correcto,si me puedes guiar te lo agradeseria mucho
Código PHP:
Ver original
  1. <?php
  2. $valfila = array($_POST["posicionCampo"]); /*tome esta variable ya que aca se guarda la cantidad de filas que se van creando */
  3. $valcampo = array($_POST["nombre["+posicionCampo+"]"]); /*datos del primer campo*/
  4. $valcampo2 = array($_POST["web["+posicionCampo+"]"]); /*datos segundo campo*/
  5. $valcampo3 = array($_POST["correo["+posicionCampo+"]"]); /*datos del tercer campo*/
  6. ?>

gracias !!

Última edición por lobezno_1421; 08/07/2010 a las 17:24
  #6 (permalink)  
Antiguo 09/07/2010, 05:27
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 3 meses
Puntos: 126
Respuesta: ayuda con java script

Hola

Este es el foro de javascript y lo que te ocupa ahora es PHP. En caso que tengas alguna otra duda, postela en el foro de PHP
Ponle a todos los campos el mismo nombre. Es decir no los nombres como posicioncampo, nombre, etc, sino, por ejemplo, con el nombre campo
Código PHP:
Ver original
  1. <?php
  2. $valores = array($_POST["campo"]); // Matriz con todos los valores de los campos
  3.  
  4.  
  5. $Arr2 = array(); // Valores del primer campo de cada tr
  6. $Arr3 = array(); // Valores del segundo campo de cada tr
  7. $Arr4 = array(); // Valores del tercer campo de cada tr
  8. $Arr5 = array(); // Valores del cuarto campo de cada tr
  9.  
  10. $j = 0;
  11. for($i = 0; $i < sizeof($valores[0]); $i+=4) {
  12. if ($valores[0][$i] != "") {
  13. array_push($Arr2, $valores[0][$i]);
  14. $j += 1;
  15. }
  16. }
  17.  
  18.  
  19. for($i = 1; $i < sizeof($valores[0]); $i+=4) {
  20. if ($valores[0][$i] != "") {
  21. array_push($Arr3, $valores[0][$i]);
  22. }
  23. }
  24.  
  25.  
  26. for($i = 2; $i < sizeof($valores[0]); $i+=4) {
  27. if ($valores[0][$i] != "") {
  28. array_push($Arr4, $valores[0][$i]);
  29. }
  30. }
  31.  
  32.  
  33. for($i = 3; $i < sizeof($valores[0]); $i+=4) {
  34. if ($valores[0][$i] != "") {
  35. array_push($Arr5, $valores[0][$i]);
  36. }
  37. }
  38.  
  39.  
  40. for($i = 0; $i < $j; $i++) {
  41. echo $Arr2[$i].  ",";
  42. echo $Arr3[$i].  ",";
  43. echo $Arr4[$i].  ",";
  44. echo $Arr2[$i].  "<br />";
  45. }
  46. ?>
Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #7 (permalink)  
Antiguo 09/07/2010, 10:17
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: ayuda con java script

ok, te agradesco la yuda prestada (y)

Etiquetas: java
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 00:49.