necesito ayuda, un amigo y yo estamos intentando que esto funcione pero no nos sale. Os cuento lo que hemos hecho, despues de sopesar los pros y los contras nos hemos decantado por utilizar el objeto Application del global.asa.
el archivo Global.asa es el siguiente....
Código PHP:
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Application_OnStart
'CONTROLAR LA CONEXION SIMULTANEA DE LOS USUARIOS
Application.Lock
set Application("online")=Server.CreateObject("Scripting.Dictionary")
set Application("online")=nothing
Application.Unlock
End Sub
Sub Session_OnEnd
'-----------------------------------------------------
nkey=session("password") & "," & session("usuario")
if Application("online").Exist(nkey) THEN
Application("online").Remove nkey
End if
---------------------------------------------------
End Sub
</SCRIPT>
esto en la página del GLOBAL.ASA y en la página del login.asp tenemos lo siguiente
Código PHP:
<%else
'eliminamos las posibles comillas de la entrada
'para evitar la introducción de sentencias SQL
usuario=replace(request.form("usuario"),"'","")
password=replace(request.form("password"),"'","")
usuario=request.form("usuario")
password=request.form("password")
nkey="password" & "," & "usuario"
basedatos=server.mappath("../data/clientes.mdb")
set conexion = server.createobject("adodb.connection")
conexion.open "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & basedatos & ";"
set registros=conexion.execute("SELECT * FROM clientes WHERE usuario='"&usuario&"' and password= '"&password&"'")
if registros.eof then
response.redirect "login.asp?msg=Usuario%20o%20password%20incorrectos"
end if
if Application("online").Exist(nkey) THEN
response.redirect "login.asp?msg= Lo sentimos, ya existe un usuario dentro utilizando su nombre de usuario y password "
ELSE
Application("online").Add nkey , ""
session("password")=registros("password")
session("usuario")=registros("usuario")
session("nombre")=registros("nombre")
session("apellido1")=registros("apellido1")
session("apellido2")=registros("apellido2")
session("autorizacion")=1
session.TimeOut = 20
registros.close
conexion.close
set registros = nothing
set conexion = nothing
response.redirect "fullscreen.htm"
end if
end if
%>
bueno, este es el codigo, espero que hayan tenido paciencia para leerlos, (perdon si me he enrollado poniendo código)
el problema es que cuando ABRO LA PÁGINA DEL LOGIN.ASP EL NAVEGADOR ME DA UN ERROR QUE JAMAS HABIAMOS VISTO NI TENEMOS IDEA,
si alguíen puede colaborar, gracias de antemano.
el error es el siguiente....
Código PHP:
Objeto Application error 'ASP 0197 : 80004005'
Uso no autorizado de objeto
//global.asa, line 16
Sólo los objetos con el modelo de subprocesamiento controlado se pueden agregar al objeto intrínseco aplicación.
ni idea amigos, favor de un cable,
EN LA LINEA 16 DONDE INDICA EL ERROR, TENGO LO SIGUIENTE...
Código PHP:
set Application("online")=Server.CreateObject("Scripting.Dictionary")
SOS
SOS
SOS
SOS
hombre, yo sabía que el tema era dificil, pero
¿no hay nadie por ahí?