Comunidad de diseño web y desarrollo en internet online

problemas con variable LoadVars- ASP

Citar            
MensajeEscrito el 29 Jun 2005 04:16 pm
Hola a todos, tengo una pequeña pelea con el LoadVars que estoy aprendiendo a usarlo con el tutorial que hay aqui.
Lo que quiero hacer es sacar una página mediante un ASP y luego pasarle esa página a una variable al Flash con LoadVars, y luego en un boton ponerle que vaya a esa página que esta en la variable. Las líneas que uso son las siguientes:

Saco la url mediante ASP, como sigue:
<%
Dim R,C,sSQL,url

Set C = Server.CreateObject ("ADODB.Connection")
C.Open "DSN=dominio.com.fem"

sSQL = "Select * from empresas where codigo=362"
Set R = C.Execute (sSQL)

if R.Fields ("url")="-" then
else
url = R.Fields ("url")
end if
%>
<% Response.Write url%>


Luego en el primer fotograma del Flash pongo:
var MiLoadVars = new LoadVars();

MiLoadVars.onLoad = function(){
var url = _level0.url;
}

MiLoadVars.load("url.asp");


Y por último en las acciones del boton:

on (press) {
getURL("MiLoadVars.url", "_blank");
}


Si me pudiera ayudar alguien se lo agradeceria, no se si falla cuando meto la variable en el press del boton o hago hago mal cuando recojo la variable de ASP.

Gracias a todos.

Por LinosInk

36 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 29 Jun 2005 05:02 pm
No conozco asp asi que especificamente no te puedo ayudar con asp especificamente pero voy a intentar de darte una idea de como funciona loadVars:

ok estamos claro que debes hacer la declaracion de la variable de LoadVars.

el evento load de LoadVars se usa cuando vas recibir datos del script del lado del servidor (en este caso de asp), fijate bien solo recibir datos no enviar.

el evento sendAndLoad de LoadVars envia unos datos al script, estos se procesan en el script (o al menos deberia ser asi), y el script devuelve datos a la pelicula de flash.

Luego de cualquier de estos dos eventos se ejecuten correctamente se ejecutara el evendo onLoad de LoadVars (por supuesto si esta definida), ahora un ejemplo de todo esto:

Código :

var miLV = new LoadVars();
miLV.load("script.asp");

miLV.onLoad = function (){
      trace(this.url); //<--fijate en esta linea, url es la variable que define el script de asp para darle respuesta a la pelicula
}

con sendAndLoad

Código :

var miLV2 = new LoadVars();
miLV2.variable1 = "algo";
miLV2.variable2 = "algo";
miLV2.sendAndLoad("script2",miLV2,"POST") //<-- fijate mando miLV2 pero implicitamente estoy mandando variable1 y variable2 por el metodo POST
miLV2.onLoad = function (){
     trace(this.resultado1);
     trace(this.resultado2);
}


bueno me imagino que sabes que significa el this, por si acaso this.resultado1 = miLV2.resultado1, pero te recomiendo que use this :wink:

Espero que te sirva de ayuda, no se tienes error en asp porque no lo manejo, pero lo de actionscript es asi y note que pusiste

Código :

MiLoadVars.onLoad = function(){
var url = _level0.url;
} 


por eso te hice la aclaracion en actionscript, porque ya url esta definida desde el script de ASP, no necesitas definirla de nuevo, y los level tengo entendido que se usan es para LoadMovieNum, que manejan estos niveles

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 29 Jun 2005 05:40 pm
Hola Maikel, muchas gracias por la respuesta. tienes razón los level se utilizan en LoadMovieNum, gracias por la aclaración.

El ASP creo q esta bien ya que ejecute la página asp sola y escribo la variable url y lo hace bien.

Solo necesito recibir datos ya que la página me la saca la página ASP, coji el código que me pusiste y lo meti en el primer fotograma.

var miLV = new LoadVars();
miLV.load("script.asp");

miLV.onLoad = function (){
trace(this.url);
}


luego en el boton le puse:

on (press) {
getURL(miLV.url, "_blank");
}


pero sigue sin hacerme nada y al probralo y darle al boton no hace nada. sabes si tengo q poner de otra forma la variable en la acción press del botón o hay que declarar de alguna forma especial la variable en el script de la pagina.

gracias por todo otra vez.

Por LinosInk

36 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 29 Jun 2005 05:44 pm
no debes hacer un getURL con LoadVars, me falto aclararte eso, pon esto asi:

Código :

var miLV = new LoadVars();

miLV.onLoad = function (){
trace(this.url);
}

codigo del boton

Código :

on (press) {
miLV.load("script.asp");
} 


prueba a ver si te funciona, sino ponle el prefijo _root a miLV en el el evento del boton y al onLoad, :wink:

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 30 Jun 2005 09:08 am
Hola y gracias de nuevo Maikel, sigo sin conseguir hacer que me funcione.

Puse los codigos que me diste (probe tanto poniendo _root. como sin él) y nada al subirlo y probarlo al pinchar en el boton no me hace nada.

La única diferencia de probar con uno u otro es que al probar la pelicula sin subirla al servidor con _root. al pinchar en el boton me dice que esta "undefined" pero bueno eso supongo que sera pq no puede entrar al ASP sino lo subo a la red ya q no tengo instalado el ISS y lo tengo q probar todo arriba.

El codigo tengo q ponerlo en el primer frame no? a ver si lo hay q poner en otro sitio, ya no se q puede estar mal, se esta convirtiendo en algo personal, jeje.

Saludos, y muchas gracias.

Por LinosInk

36 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 30 Jun 2005 11:40 pm
LinosInk escribio

La única diferencia de probar con uno u otro es que al probar la pelicula sin subirla al servidor con _root. al pinchar en el boton me dice que esta "undefined" pero bueno eso supongo que sera pq no puede entrar al ASP sino lo subo a la red ya q no tengo instalado el ISS y lo tengo q probar todo arriba.


Ok te diste tu mismo la respuesta, la razón del undefined es porque es el script no se esta ejecutando en un servidor, acuerdate que asp es un script del lado del servidor y que necesita de este para poder ejecutarse, de lo contrario solo sera un documento de texto para el explorador e incluso para el LoadVars de la película swf, este debe ser ejecutado como script en el servidor para poder enviar la respuesta adecuada a la película.

Bueno intenta de nuevo instalando el servidor y poniendo los archivos en el servidor por supuesto, cualquier duda posteala :wink:

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.