ColdFusion - Variables globales

 
Vista:

Variables globales

Publicado por Myriam (7 intervenciones) el 22/03/2001 12:11:13
Hola a todos:
Estoy haciendo una aplicación en donde quiero mantener el identificador del usuario durante toda la sesión. ¿Alguien sabe cómo hacerlo?
Un saludo y Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Variables globales

Publicado por Víctor Espíndola (24 intervenciones) el 22/03/2001 15:16:23
en el application.cfm en la primera linea coloca:
<CFAPPLICATION SESSIONMANAGEMENT="Yes" SESSIONTIMEOUT="#CreateTimeSpan(dias,horas,minutos,segundos)#">

en SESSIONTIMEOUT colocas el tiempo que quieres que duren tus variables de sesión.

luego para definir una variable de sesión la identificas anteponiendo "session.", por ejemplo si quieres declarar una variable con el nombre del usuario que dure 5 minutos colocas lo siguiente:

En el application.cfm

<CFAPPLICATION SESSIONMANAGEMENT="Yes" SESSIONTIMEOUT="#CreateTimeSpan(0,0,5,0)#">

En el archivo que declaras la variable
<cfset session.nombre = nombreusuario>

ahora desde cualquier archivo puedes utilizar la variable "session.nombre"

PD.: los 5 se cuentan durante la inactividad, es decir, cuando el usuario no esta navegando en el sitio. si el usuario se mueve de una página a otra antes de los 5 minutos la variable seguira existiendo en caso contrario la variable muere.

2º PD.: para saber si la variable existe utiliza
<cfif isDefined("session.nombre")>

Chao.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables globales

Publicado por Myriam (7 intervenciones) el 23/03/2001 11:08:19
AHora tengo otro problema. ¿Cuándo se ejecuta application.cfm? Mi problema es que con un mismo usuario se me ejecuta cada vez que accedo a la página principal. Tengo una aplicación que es una tienda virtual. Asigno un identificador al usuario, compra un producto, pero si quiere seguir comprando, me cambia el identificador y ya no me vale. ¿Sabéis a qué puede ser debido?
Gracias y un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables globales

Publicado por Víctor (24 intervenciones) el 23/03/2001 14:11:59
El application.cfm se ejecuta antes que cualquier página, por ejemplo si estoy en una página llamada home.cfm y me cambio a una que se llama carro.cfm el application.cfm se ejecuta antes que el carro.cfm. Eso es asi con todas las páginas, sin exclución.

Con respecto a lo segundo me parece que el identificador se lo asignas en el application.cfm, si es asi escribe lo siguiente:

<cfif NOT isDefined("session.identificador")>
<cfset session.identificador = createuuid()>
</cfif>

esto significa que si el usuario ya tiene un identificador no lo voy a crear nuevamente.

PD.: como recomendación crea una sesión larga y cuando el usuario haga la compra define por ejemplo session.identificador = false para que no pueda seguir comprando.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables globales

Publicado por Víctor (24 intervenciones) el 23/03/2001 14:18:03
Se me olvido decir que no te recomiendo declarar la sesión en el application.

eso no más.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables globales

Publicado por Myriam (7 intervenciones) el 26/03/2001 08:18:33
Y ¿Dónde podría definir la sesión?
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables globales

Publicado por Víctor (24 intervenciones) el 26/03/2001 14:51:13
En la página principal, o en la del carrito si es que la tienes. Tambien podria ser en la que seleccionas los productos. Decide tu.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar