Foros del Web » Programando para Internet » Javascript »

Como se envian mas de una variable ?

Estas en el tema de Como se envian mas de una variable ? en el foro de Javascript en Foros del Web. Hola lo que quiero es eliminar registros de la base de datos sin recargar la pagina el código que estoy usando funciona perfecto y es ...
  #1 (permalink)  
Antiguo 12/10/2009, 16:51
Avatar de jival  
Fecha de Ingreso: noviembre-2007
Mensajes: 173
Antigüedad: 16 años, 6 meses
Puntos: 0
Como se envian mas de una variable ?

Hola

lo que quiero es eliminar registros de la base de datos sin recargar la pagina
el código que estoy usando funciona perfecto y es este:

Código HTML:
function eliminar(elId){
var contenedor;
contenedor = document.getElementById('contenedor');

ajax=nuevoAjax();
ajax.open("GET", "borrar_registros.php?idEliminar="+elId,true);
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
contenedor.innerHTML = ajax.responseText
}
}
ajax.send(null)
}



este el link :

<a href='#'onClick='eliminar($row[id])'>Eliminar</a>

Lo anterior funciona perfectamente pero necesito pasar también la variable $nombre ademas de la varible id .

¿ como hago para enviarle a php 2 o mas variables con este tipo de código?



ajax.open("GET", "borrar_registros.php?idEliminar="+elId,true);

<a href='#'onClick='eliminar($row[id])'>Eliminar</a>

se que esa dos cosas las debo modificar para pasar mas variables lo que no se es como hacerlo
  #2 (permalink)  
Antiguo 12/10/2009, 17:12
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Como se envian mas de una variable ?

tienes que unir las variables usando el formato de GET. o sea, luego del signo ? pueden haber tantos pares nombre=valor segun sea necesario, pero cada par debe estar separado por el simbolo &. de modo que la URL te queda asi registro.php?id=elid&nombre=unnombre&otra_var=valo r&etc=mas_cosas.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 12/10/2009, 18:09
Avatar de jival  
Fecha de Ingreso: noviembre-2007
Mensajes: 173
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Como se envian mas de una variable ?

<a href='#'onClick='eliminar($row[id])'>Eliminar</a>

y en el caso del link como seria ?
  #4 (permalink)  
Antiguo 12/10/2009, 18:18
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Como se envian mas de una variable ?

seria igual. lo unico que puede cambiar es que si los valores van a ser dinamicos, es decir si el valor a enviar se indicara al momento de presionar el enlace. en ese caso tendrias que crear la ruta dinamicamente en el evento onclick y asignarla a la propiedad href del enlace o del objeto location. cualquiera de las dos es valida.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 12/10/2009, 18:21
Avatar de jival  
Fecha de Ingreso: noviembre-2007
Mensajes: 173
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Como se envian mas de una variable ?

lo tengo asi y no me funciona :

function eliminar(elId, name){
var contenedor;
contenedor = document.getElementById('contenedor');

ajax=nuevoAjax();
ajax.open("GET", "borrar_registros.php?name="name"&idEliminar="+elI d ,true);



ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
contenedor.innerHTML = ajax.responseText
}
}
ajax.send(null)
}



///////////////////////////////////////////////


<a href='#'onClick='eliminar($row[id]&$name)'>Eliminar</a>


QUE TENGO MAL AMIGO ?
  #6 (permalink)  
Antiguo 12/10/2009, 18:32
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Como se envian mas de una variable ?

Cita:
<a href='#'onClick='eliminar($row[id]&$name)'>Eliminar</a>
¡vaya, ahora lo comprendo! en el mensaje anterior me desvie pensando en que te referias a otra cosa. veo que estas usando variables de PHP y las quieres pasar en la funcion. primero que javascript no comprende las variables de PHP ni de ningun otro lenguaje servidor por simple hecho que se ejecutan en dos contextos diferente: servidor y cliente. tienes que pasarle el valor de las variables PHP en una forma que javascript lo entienda, es decir imprimiendo la variable con echo por ejemplo. si el valor es un string, tienes que agregarle los quotes para que javascript lo interprete como string. si el valor es un numero no hay problema.
Código:
<a href='#'onClick='eliminar(<?php echo "\"${row['id']}\", \"$name\"" ?>)'>Eliminar</a>
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 12/10/2009, 18:33
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Como se envian mas de una variable ?

Tienes un error de sintaxis. Debes concatenar:
Código Javascript:
Ver original
  1. "...name=" + name + "&idEliminar..."
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #8 (permalink)  
Antiguo 12/10/2009, 18:42
Avatar de jival  
Fecha de Ingreso: noviembre-2007
Mensajes: 173
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Como se envian mas de una variable ?

Gracias David entonce asi estaria bien:


function eliminar(elId, name){
var contenedor;
contenedor = document.getElementById('contenedor');

ajax=nuevoAjax();
ajax.open("GET", "borrar_registros.php?name=" + name + "&idEliminar="+elId ,true);



ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
contenedor.innerHTML = ajax.responseText
}
}
ajax.send(null)
}
  #9 (permalink)  
Antiguo 12/10/2009, 18:44
Avatar de jival  
Fecha de Ingreso: noviembre-2007
Mensajes: 173
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Como se envian mas de una variable ?

Cita:
Iniciado por zerokilled Ver Mensaje
¡vaya, ahora lo comprendo! en el mensaje anterior me desvie pensando en que te referias a otra cosa. veo que estas usando variables de PHP y las quieres pasar en la funcion. primero que javascript no comprende las variables de PHP ni de ningun otro lenguaje servidor por simple hecho que se ejecutan en dos contextos diferente: servidor y cliente. tienes que pasarle el valor de las variables PHP en una forma que javascript lo entienda, es decir imprimiendo la variable con echo por ejemplo. si el valor es un string, tienes que agregarle los quotes para que javascript lo interprete como string. si el valor es un numero no hay problema.
Código:
<a href='#'onClick='eliminar(<?php echo "\"${row['id']}\", \"$name\"" ?>)'>Eliminar</a>
Me parece muy curioso que me digas eso amigo porque con una sola variable me funciona perfecto:


<a href='#'onClick='eliminar($row[id])'>Eliminar</a>

así me funciona perfecto.
  #10 (permalink)  
Antiguo 12/10/2009, 20:35
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Como se envian mas de una variable ?

pues no se que decirte, admito que aun no tengo una base solida de php y por el momento he comenzado a usarlo como CLI. si te funciona debe ser porque $row[id] es un numero pero aparentemente la segunda variable es un string. entonces necesitas hacerlo que javascript lo reconozca como string porque sino lo considera como variable de javascript.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
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 18:44.