Foros del Web » Creando para Internet » Flash y Actionscript »

Recuperar valor de variable Get en la Url

Estas en el tema de Recuperar valor de variable Get en la Url en el foro de Flash y Actionscript en Foros del Web. Saludos a todos! Pongo éste Post porque no encuentro respuesta en el foro (y he buscado mucho), espero no estar repitiendo temas... Si es así ...
  #1 (permalink)  
Antiguo 08/05/2005, 05:10
Avatar de txiripindo  
Fecha de Ingreso: noviembre-2003
Ubicación: Pamplona - Navarra
Mensajes: 36
Antigüedad: 21 años
Puntos: 1
Recuperar valor de variable Get en la Url

Saludos a todos!
Pongo éste Post porque no encuentro respuesta en el foro (y he buscado mucho), espero no estar repitiendo temas... Si es así ¡perdón!

Estoy intentando hacer una película que al cargar lea la URL en la que está, que tendrá una variable "?seccion=X" por el método GET, y la use para destacar la sección en la que se encuentra.

Las razones por las que lo quiero hacer así son complejas y largas de explicar, el caso es que llevo varios días buscando en todas partes y no encuentro la manera de hacerlo. Me dijo un amigo que creía que se podía, pero empiezo a dudarlo.

Conozco algo el tema de LoadVariables y otra manera de hacerlo mediante JavaScript, pero no me sirven por varias razones, entre otras porque no debo incluir código extra en la página.

Lo que busco es simplemente eso, que la película al cargarse lea la URL en la que está, recoja una variable que habrá allí y actúe de diferentes formas según esa variable.

¿Es ésto posible?

Gracias!
  #2 (permalink)  
Antiguo 19/05/2005, 12:21
 
Fecha de Ingreso: diciembre-2003
Mensajes: 310
Antigüedad: 20 años, 11 meses
Puntos: 4
estoy intentando hacer exactamente lo mismo , pero parece que nadie lo sabe.

Es algo muy basico.
  #3 (permalink)  
Antiguo 20/05/2005, 02:55
Avatar de txiripindo  
Fecha de Ingreso: noviembre-2003
Ubicación: Pamplona - Navarra
Mensajes: 36
Antigüedad: 21 años
Puntos: 1
Bueno, al final me he dejado los cuernos investigando y he encontrado una solución.
Parece que no se puede (o por lo menos no he encontrado la forma) recoger un valor directamente de la URL pero se puede, mediante PHP, escribir ese valor en la etiqueta <object> de la pelicula flash y que ésta lo lea correctamente.

Yo lo he hecho así y me funciona estupendamente:

Código:
   <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="752" height="459">
  <param name="movie" value="nombre-de-la-pelicula.swf">
  <param name="quality" value="high">
  <param name="FlashVars" value="<?php
  if ($_GET["nombreVariable"]) {
  	$unValorVariable= $_GET["nombreVariable"];
  	echo "nombreVariable=$unValorVariable\">\n";
  } else {
  	echo "nombreVariable=otroValorVariable\">\n";
  }
   ?>
  <embed src="nombre-de-la-pelicula.swf" FlashVars="<?php
  if ($_GET["nombreVariable"]) {
  	echo "nombreVariable=$unValorVariable\" ";
  } else {
  	echo "nombreVariable=otroValorVariable\" ";
  }
   ?>
  quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="752" height="459"></embed></object>
Aquí lo que hago es:
-Mirar a ver si está la variable "nombreVariable" en la URL.
-En caso de estar, escribo en "FlashVars" (una zona que sirve precisamente para pasar variables a la película) el valor que trae.
-En caso de no venir esa variable en la URL, escribo en "FlashVars" otro valor al que le llamo "otroValorVariable" ya que prefiero tener siempre un valor por cosas de mi película.
-Como se ve en el código, hay que escribir lo mismo dos veces (una en la subetiqueta <param name="FlashVars" ...> y otra en <embed ... FlashVars="..." ...>) para que todos los navegadores lo hagan funcionar bien.

También se podría hacer que si trae la variable en la URL escriba lo de "FlashVars" y que si no lo deje vacío, pero bueno, yo lo tengo planteado así.

Cuando carga la página y PHP escribe su código, la cosa debería quedar así:

Código:
   <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="752" height="459">
  <param name="movie" value="nombre-de-la-pelicula.swf">
  <param name="quality" value="high">
  <param name="FlashVars" value="nombreVariable=x">
  <embed src="nombre-de-la-pelicula.swf" FlashVars="nombreVariable=x" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="752" height="459"></embed></object>
Después, desde la película Flash, en el primer fotograma o donde queramos, recuperamos el valor así de fácil:

Código:
var variableRecuperada = _root.nombreVariable;
Espero haberlo explicado bien, cualquier duda ponerla por aquí.
Saludos a todos!
  #4 (permalink)  
Antiguo 20/05/2005, 09:12
 
Fecha de Ingreso: diciembre-2003
Mensajes: 310
Antigüedad: 20 años, 11 meses
Puntos: 4
PERFECTOOOOOOOOOO!!!!!
Funcionó muy bien.

Muchas gracias.
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 17:50.