Foros

 
ForumForumForos DNNForos DNNDesarrolloDesarrolloEnviar datos desde DNN a otra pagina htmlEnviar datos desde DNN a otra pagina html
Anterior Anterior
 
Siguiente Siguiente
Nuevo Mensaje
 03/08/2010 18:33
 

Hola compañeros tododnn

necesito saber como puedo enviar datos desde un modulo de DNN a otra pagina html y capturarlos con javascript. Me explico mejor.

la cuestion es que quiero que pormedio de dnn el usuario pueda ver otra pagina html pero necesito obligar al usuario a que se identifique dentro de dnn para que asi pueda por medio de un link redirigirse a la otra pagina. lo que no quiero es que el usuario copie el link de la otra pagina y lo ponga en la barra de direcciones para acceder.

En resumen... poder pasar los datos del usuario como nombre, el rol, ID a otra pagina html y por medio de javascript poder capturarlos para saber que el usuario realmente inicio sesion y no esta simplemente pegando la direccion de la pagina.

Gracias por su colaboración. Saludos.

Nuevo Mensaje
 04/08/2010 8:58
 

Buenas, yo que tu lo hacia con una QueryString, es decir pasar parametros por la URL, contruyendo la URL desde código servidor , algo asi

www.tudominio.com/default.aspx?ID=23&Rol=1

o si es un html

www.tuHtml.com/Index.html?ID=23&Rol=1

Luego solo tienes que recuperar los Parametros desde Javascrip, te pego un ejemplo que tengo por mi Wiki.

ejemplo:

-----------------------------------

/*

* param( name )

* Returns the string value associated with name (name is case sensitive). If

* name was not defined in the query string, returns undefined. If multiple

* values were associated with name, returns the first value from the order it

* occurs in the query string.

*

* e.g., QUERY-STRING: "hello=world&hello=hi;foo&barn=yard"

* param('hello') returns "world"

* param('foo') returns undefined

* param('barn') returns "yard"

* param('not there') returns undefined

*/

/*

* params( [ name ] )

* Returns an array of all values associated with name (name is case sensitive).

* If name was not defined in the query string, returns undefined. If name is

* omitted, returns an array of every name in the query string.

*

* e.g., QUERY-STRING: "hello=world&hello=hi;foo&barn=yard"

* params('hello') returns ["world", "hi"]

* params('foo') returns [undefined]

* params('barn') returns ["yard"]

* params('not there') returns undefined

* params() returns ["hello", "foo", "barn"]

*/

String.prototype.urldec = function()

{

return unescape(this.replace(/\+/g, " "));

}

var _param = new Object();

{

var parts = window.location.search.substr(1).split(/[&;]/);

for (var i in parts) {

var pair = parts[i].split(/=/);

var name = pair[0].urldec();

var value = pair[1] != undefined ? pair[1].urldec() : undefined;

if (_param[name] == undefined)

_param[name] = [value];

else

_param[name].push(value);

}

}

function param(name)

{

return _param[name] != undefined ? _param[name][0] : undefined;

}

function params(name)

{

if (arguments.length > 0)

return _param[name];

else {

var pnames = [];

for (var p in _param)

pnames.push(p);

return pnames;

}

}

----------------------------------

Es obligatorio que la redirecciones a un Html? lo digo porque si depende de ti, puedes redireccionarla a un .aspx y capturar desde el código de servidor los parametros de la QueryString.

Un saludo!


www.lgisoluciones.com
Nuevo Mensaje
 04/08/2010 9:11
 

una duda... que vas a ocultar la pagina con un panel en hidden si no estan logueados o algo asi?

Te lo digo, porque esas verificaciones en cliente se pueden sacar facilmente simplemente viendo el código fuente y viendo que necesita pasarle por QueryString, es decir, veo el codigo fuente y veo que una función javascript pilla unos parametros para darme acceso, pues yo pillo y me creo la URL y la pego en el navegador y voila! acceso. Otras veces es tan sencillo como con el fireBug, cambiarle la propiedad visibility hidden del div o panel que lo oculta, y lo ves sin problemas...No sabes la cantidad de páginas que tienen seguridad parecida y alguien con conocimientos basicos de programación les puede hacer un cristo...

Por eso te recomiendo la página aspx, para controlarlo desde codigo de servidor y tener menos problemas ;)

Saludos.


www.lgisoluciones.com
Nuevo Mensaje
 04/08/2010 18:08
 

Hola hiunkeru

Pues la pagina que quiero proteger esta fuera de DNN es otra pagina, que dependiendo del rol del usuario y su identificacion pues le muestro cierta informacion. la idea es que obligatoriamente se identifique en dnn, ya que si intentan copiar y pegar el link pues la pagina no les va a mostrar nada. La funcion principal de esta pagina externa es confirmar los datos del usaurio para poder redireccionarlo a cierta informacion que solo se le muestra dependiendo del rol del usuario.

Otra cosa es que pues pasando datos por URL queda muy visible y como dices cualquiera con conocimientos basicos podria pillarse una url y tener acceso. Estaba pensando si no habria otra forma de pasar los datos que no fuera por url, depronto por metodo POST y poder capturarlos con javascript en la otra pagina para procesarlos.

La idea que tenia al principio era que si es posible por medio de un linkbutton poder mandar los datos del usuario redireccionandolo a la otra pagina y que fuera totalmente transparente para el usuario no por url. Es una idea no se que tan complicado sea.

Gracias. Saludos.

Nuevo Mensaje
 04/08/2010 22:49
 

A ver, si estoy equivocado que alguien me corrija, no puedes pasar datos meniante Post, porque no pertenecen al mismo dominio no? por seguridad creo que no te va a dejar.

Asi de primeras no se me ocurre como podrias hacerlo, porque con un linkbutton lo que podras hacer es crear la query string y redireccionarlo donde quieras, pero no se si lo que quieres se puede hacer.

Se me estan ocurriendo un par de cosas, pero no se si se podrian hacer con Html, yo te lo digo y tu buscas información de si se puede.

Por un lado, puedes mandarle una cookie al ordenador del usuario, con los datos que me estas diciendo, lo que nunca e echo es recuperar los datos de una cookie desde un Html, con lo que no se si se podra.

Otra cosa que podria dar resultado, es meter los datos en la cache del navegador, pero yo tendria el mismo problema, que desde html no se si se pueden recuperar.

Creo que meterlo en la session no se puede, pero miralo por si acaso.

bueno te e dejado los deberes ;)

Si ves que de alguna de estas formas se puede, dinoslo, asi nos sirve a todos.

Un cordial saludo.


www.lgisoluciones.com
Anterior Anterior
 
Siguiente Siguiente
ForumForumForos DNNForos DNNDesarrolloDesarrolloEnviar datos desde DNN a otra pagina htmlEnviar datos desde DNN a otra pagina html

En total, tenemos 1098 nuevo(s) hilo(s) y 5265 nuevo(s) mensaje(s)
Los hilos más populares han estado en ¿por que?
Los hilos más activos han estado en no veo el portal desde los pc's de la red

Más activos


UserTotalPosts
jmaldonadom 1101
anonymous 798
javier 488
Faco 395
hiunkeru 184
vitolo 182
Guillaume 168
ccolonia 159
dormio 157
elijo_otroo 138
sonsai 84
Dreamvk 67
tirillos 48
vte_torres 47
oskr226 46

Últimos Mensajes...