Foros del Web » Programando para Internet » ASP Clásico »

Problema con Objeto Session

Estas en el tema de Problema con Objeto Session en el foro de ASP Clásico en Foros del Web. Hola. Tengo un problemilla al cargar un sitio. En el global.asa tengo este codigo. Código: SUB Application_OnStart Application("strBookId")= 2 END SUB Sub Session_OnStart 'Response.CacheControl="private" 'Response.Expires=0 ...
  #1 (permalink)  
Antiguo 31/01/2006, 00:28
 
Fecha de Ingreso: mayo-2005
Mensajes: 27
Antigüedad: 19 años
Puntos: 0
Problema con Objeto Session

Hola.

Tengo un problemilla al cargar un sitio. En el global.asa tengo este codigo.

Código:
SUB Application_OnStart
	Application("strBookId")= 2
END SUB


Sub Session_OnStart
	'Response.CacheControl="private"
	'Response.Expires=0
	'on error resume next
	dim con
	dim cmdLinks, cmdExample
	dim rsLinks, rsExample
	dim arrExample
	dim arrHeadword(0,0)
	dim paramBookId
	dim str
	
	set con = server.CreateObject("ADODB.Connection")
	'con.Open "DSN=DKEEXP;UID=un_usr;PWD=un_pass"
	'con.Open "DSN=ED;UID=sa;PWD=sa"
	set cmdLinks = server.CreateObject("ADODB.Command")
	set rsLinks = server.CreateObject("ADODB.Recordset")
	
	Dim serverNAME, alosada_STRING, DatabaseName, DbUsername, DbPassword
	serverNAME = "blablabla.brinkster.com"
	DatabaseName = "!!!!!!"
	DbUsername = "!!!!!!"
	DbPassword = "********"

	alosada_STRING = "Provider=SQLOLEDB;Data Source='" & serverNAME & "';Initial Catalog=" & Database_Name & ";User Id=" & DbUsername & ";Password=" & DbPassword & ";"
	
	con.Open(alosada_STRING)
			
	cmdLinks.ActiveConnection = con
	cmdLinks.CommandType =4
	cmdLinks.CommandText = "sp_getGooglePictureLinks"
	set paramBookId = cmdLinks.CreateParameter("bookid",3,,,Application("strBookId"))
	cmdLinks.Parameters.append paramBookId
	set rsLinks = cmdLinks.Execute()
			
	sectionDict.Add "sec2Title","dinosaurios"
	sectionDict.Add "sec2ImgPrefix","gifs/dinosaurs/exdino"
	sectionDict.Add "sec2SpanClass","dinolink"
	sectionDict.Add "sec2SpanClassHome","dinolink"
	sectionDict.Add "sec2NoResultClass","noresultsdino"
	sectionDict.Add "sec2GoogleImg","gifs/dino/exdino_googledirectory.gif"
	sectionDict.Add "sec2GoogleLink", cstr(rsLinks("GoogleLink"))
	sectionDict.Add "sec2PicLink", cstr(rsLinks("ClipartLink"))
	sectionDict.Add "sec2body","bodydinored"
	sectionDict.Add "sec2css", "styles/styles_dino.css"
	sectionDict.Add "sec2bgcolor", "#F5D6D6"
	sectionDict.Add "sec2listcolor", "#CC3333"
			
	arrHeadword(0,0)=""
	set cmdExample = server.CreateObject("ADODB.Command")
	set rsExample = server.CreateObject("ADODB.Recordset")
	cmdExample.ActiveConnection = con
	cmdExample.CommandType = 4
	cmdExample.CommandText = "sp_getexampleheadwords"
	set rsExample = cmdExample.Execute()
	
	If not rsExample.BOF=true and rsExample.EOF=true then
		arrExample = rsExample.GetRows()
		Session("arrExample") = arrExample
	End If
	
	Session("arrHeadword")=arrHeadword
	set Session("sectionDict") = sectionDict
	
	set Session("con") = con
	Session("strSectionId")=2
	set rsLinks = nothing
	set rsExample = nothing
	set cmdExample = nothing
	set cmdLinks = nothing	
End sub

Sub Session_OnEnd 
	set con = nothing
End Sub
y en la pagina variables.asp de la carpeta includes tengo este codigo

Código:
secID = "sec" & Application("strBookId")
	set secDict = Session("sectionDict")
	strTitle = secDict.Item(secID & "Title")
	strImgPrefix = secDict.Item(secID & "ImgPrefix")
	strSpanClass = secDict.Item(secID & "SpanClass")
	strSpanClassHome = secDict.Item(secID & "SpanClassHome")	
	strCss = secDict.Item(secID & "css")
	strbgcolor = secDict.Item(secID & "bgcolor")
	strImgArrow = secDict.Item(secID & "arrow")
	strGoogleLink = secDict.Item(secID & "GoogleLink")
	strGoogleImg = secDict.Item(secID & "GoogleImg")
	strPicLink = secDict.Item(secID & "PicLink")
	strNoResultClass = secDict.Item(secID & "NoResultClass")
	strBodyClass = secDict.Item(secID & "body")
	strListColor = secDict.Item(secID & "listcolor")
Al cargar la pagina de inicio del site me sale este error.

Microsoft VBScript runtime error '800a01a8'

Object required: 'Session(...)'

/projects/ED/includes/variables.asp, line 3

La verdad no se que puede ser.

Gracias por su colaboracion

Última edición por AlZuwaga; 12/02/2006 a las 13:03
  #2 (permalink)  
Antiguo 01/02/2006, 08:36
Avatar de pinchoso  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona
Mensajes: 177
Antigüedad: 18 años, 6 meses
Puntos: 0
el problema esta en --> set secDict = Session("sectionDict")

en tu Global.asa --> set Session("sectionDict") = sectionDict

no uses el SET a ver si funciona, yo nunca he usado SET y siempre me han funcionado bien las varaibles de sesión
__________________

  #3 (permalink)  
Antiguo 10/02/2006, 17:37
 
Fecha de Ingreso: mayo-2005
Mensajes: 27
Antigüedad: 19 años
Puntos: 0
Hola!!!

Hice lo que pinchoso me sugirio y me sigue saliendo el mismo error.

Por favor ayudenme con esto que llevo mas de una semana tratando de encontrar el error y no he podido solucionarlo.

Les agradezco
  #4 (permalink)  
Antiguo 10/02/2006, 18:03
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Atiende primero el mensaje privado que te acabo de mandar
  #5 (permalink)  
Antiguo 10/02/2006, 19:22
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Bueno, sobre aviso no hay engaño ...

Eliminar el set te debió haber quitado el problema, ya que claramente era incorrecto su uso.
Pero si no es así, seguramente tienes deshabilitadas las sesiones desde el IIS, revisa eso.
  #6 (permalink)  
Antiguo 10/02/2006, 19:48
 
Fecha de Ingreso: mayo-2005
Mensajes: 27
Antigüedad: 19 años
Puntos: 0
Pero cuando le quito el set me aparece el mismo error...no se si este mal la declaracion en el variables.asp

Gracias
  #7 (permalink)  
Antiguo 12/02/2006, 12:24
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
veo que aún no atiendes lo del mensaje privado, creo que que en verdad es necesario que lo hagas.

Y sobre las session, ¿verificaste que tienes habilitadas las sesiones en el IIS?
  #8 (permalink)  
Antiguo 12/02/2006, 13:10
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 2 meses
Puntos: 535
Cita:
Iniciado por Myakire
veo que aún no atiendes lo del mensaje privado, creo que que en verdad es necesario que lo hagas.
Bueno, eso ya está solucionado, gracias (de parte de freemojorisin) por avisar Myakire.
Ahora me pregunto si esa info habrá quedado en la caché de google
__________________
...___...
  #9 (permalink)  
Antiguo 12/02/2006, 13:27
 
Fecha de Ingreso: mayo-2005
Mensajes: 27
Antigüedad: 19 años
Puntos: 0
ya verifique lo me que me dijiste en el mensaje privado...en cuanto al tema de las sesiones las tengo habilitadas en la aplicacion.

He tratado de modificar el codigo por todos lados y no me quiere funcionar el sitio.
  #10 (permalink)  
Antiguo 12/02/2006, 17:45
 
Fecha de Ingreso: noviembre-2005
Mensajes: 658
Antigüedad: 18 años, 5 meses
Puntos: 3
Ese error que te da es porque el global.asa no se esta ejecutando.
Verifica por el MMC que tengas bien creada la aplicacion; tambien que el archivo global.asa este en el directorio que debe de estar.....ese es el problema
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 21:20.