Foros del Web » Programando para Internet » Javascript »

ayuda pasando variable por URL

Estas en el tema de ayuda pasando variable por URL en el foro de Javascript en Foros del Web. buenas, tengo un script y quiero que al ejecutar la funcion recarga, me pase 2 variables. la primera me la pilla y la segunda no. ...
  #1 (permalink)  
Antiguo 21/08/2008, 03:25
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 4 meses
Puntos: 3
ayuda pasando variable por URL

buenas,

tengo un script y quiero que al ejecutar la funcion recarga, me pase 2 variables. la primera me la pilla y la segunda no. habra algun problema de "" que no se encontrar:

Código:
function recarga(){ 

window.location = "<?php echo $_SERVER['PHP_SELF']; ?>?canal=" + document.form1.canal.value;"&provincia=" + document.form1.provincia.value;" onChange=location.reload()"; 


}

saludos!!
  #2 (permalink)  
Antiguo 21/08/2008, 03:45
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años, 1 mes
Puntos: 326
Respuesta: ayuda pasando variable por URL

window.location = "<?php echo $_SERVER['PHP_SELF']; ?>?canal=" + document.form1.canal.value + "&provincia=" + document.form1.provincia.value + \"" onChange=location.reload()";


Prueba esto ^^

Era un problema de ; + y " -> o eso creo xD
  #3 (permalink)  
Antiguo 21/08/2008, 03:47
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Respuesta: ayuda pasando variable por URL

Hola:

La concatenación la estás truncando con un punto y coma...

window.location = "<?php echo $_SERVER['PHP_SELF']; ?>?canal=" + document.form1.canal.value + "&provincia=" + document.form1.provincia.value;

También deberías escapar los valores por si tuviese caracteres especiales (aunque si es un select -por ejemplo- no sería necesario).

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 21/08/2008, 03:55
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 4 meses
Puntos: 3
Respuesta: ayuda pasando variable por URL

gracias a los 2,

he probado los 2 codigos y ninguno me funciona. cuando pongo vuestro codigo, no me hace nada al cambiar el select. lo que hago es un onchange en el select, que me ejecuta la funcion. y con vuestras opciones, no me hace el REFRESH!
  #5 (permalink)  
Antiguo 21/08/2008, 04:01
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Respuesta: ayuda pasando variable por URL

Hola:

Si usas location reload no pasas ningún parámetro:

<select onchange="window.open('?canal=' + document.form1.canal.value + '&provincia=' + document.form1.provincia.value, '_self')" ...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #6 (permalink)  
Antiguo 21/08/2008, 04:04
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 4 meses
Puntos: 3
Respuesta: ayuda pasando variable por URL

gracias caricatos!!

con esto ultimo si que me funciona. dos preguntillas mas que antes comentabas:

1- aunque es un select, el canal 1 por ejemplo se me ve en la URL como Canal%1. como puedo evitarlo? supongo que era eso que comentabas de escapar caracteres especiales.

2- como puedo hacer que el select de provinvia, me marque la misma provincia que me marca la URL?

saludos
  #7 (permalink)  
Antiguo 21/08/2008, 04:23
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Respuesta: ayuda pasando variable por URL

Hola:

Lo de escapar tan solo poner la función escape...

Código:
'?canal=' + escape(document.form1.canal.value)
También hay otra función que se parece... creo que urlencode()...
Pero también puedes maquillar el dato desde el value del option:
<option value="canal_1">canal 1</option>

Lo de la pregunta segunda no la tengo nada clara... procura plantear mejor la pregunta.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 21/08/2008, 04:38
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 4 meses
Puntos: 3
Respuesta: ayuda pasando variable por URL

buenas caricatos.

he probado el escape, pero me deja la cadena igual

Código:
onChange="window.open('?canal=' + escape(document.form1.canal.value) + '&provincia=' + escape(document.form1.provincia.value), '_self')"
que hago mal?

ye intento formularte mejor la pregunta. lo que quiero hacer es que en el select de la provincia, se quede marcado o seleccionada la provincia que viene por la URL. es decir, que si pongo Barcelona, ahora me muestra los resultados, pero en el select de la provincia me pone Seleccione provincia. me gustaria que Barcelona se quedase en el select...

me explico ahora?
  #9 (permalink)  
Antiguo 21/08/2008, 06:31
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 1 mes
Puntos: 839
Exclamación Respuesta: ayuda pasando variable por URL

Lo de la provincia puedes hacerlo tanto con PHP como con Javascript.

Ahora, ¿qué pasaría si el texto que se escribió no existe en el select de provincias?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #10 (permalink)  
Antiguo 21/08/2008, 07:22
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 4 meses
Puntos: 3
Respuesta: ayuda pasando variable por URL

buenas david,

gracias por tu respuesta. el texto si que existira, ya que la provincia se selecciona de un select. es decir, no lo introduce el usuario.

puedes decirme como hacerlo?

saludos
  #11 (permalink)  
Antiguo 21/08/2008, 07:28
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 1 mes
Puntos: 839
Respuesta: ayuda pasando variable por URL

Si los select de provincias son iguales en ambas páginas lo que puedes hacer es en vez de pasar el value como parámetro pasar el index del elemento seleccionado (con la propiedad selectedIndex).
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #12 (permalink)  
Antiguo 21/08/2008, 07:46
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 4 meses
Puntos: 3
Respuesta: ayuda pasando variable por URL

es que no domino nada el javascript. podrias decirme como?
  #13 (permalink)  
Antiguo 21/08/2008, 07:55
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 1 mes
Puntos: 839
Respuesta: ayuda pasando variable por URL

Bueno, a ver, podrías pasar la variable así:
Código PHP:
onChange="window.open('?canal=' + escape(document.form1.canal.value) + '&provincia=' + escape(document.form1.provincia.selectedIndex), '_self')" 
Después, puedes obtener el valor de eso en una variable en PHP y después manejar esa variable. Por ejemplo, suponiendo que ya tienes en la variable $selectindex el valor:
Código PHP:
<?php
echo "<script language='javascript'>document.form1.provincia.selectedindex = $selectedindex</script>"
?>
Eso lo pones después de definir el select.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
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 20:08.