52 messaggi dal 21 gennaio 2002
Sto utilizzando Win98 SE con PWS.
Ho scritto global.asa così:
--------------------
Sub Session_OnStart
Session.Contents.Item("strGlobale") = "Questo è sempre vero!"
On Error Resume Next
Dim myConn
Dim strSql
Dim strIp
Dim strHost
Dim strSessionId
strIp = CStr(Request.ServerVariables(REMOTE_ADDR))
strHost = CStr(Request.ServerVariables(REMOTE_HOST))
strSessionId = CStr(Session.SessionID)
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Request.ServerVariables("APPL_PHYSICAL_PATH") & "database.mdb"
strSql = "INSERT INTO Visite (SessionId, txtIpAddress, txtHost) VALUES ("
strSql = strSql & "'" & strSessionId & "', "
strSql = strSql & "'" & strIp & "', "
strSql = strSql & "'" & strHost & "', "
strSql = strSql & ")"
myConn.Execute(strSql)
myConn.Close
Set myConn = Nothing
End Sub
--------------------
Ho due problemi:

1 - Se scrivo qualcosa di sbagliato, il browser mi restituisce un errore, ciò significa che quindi il file viene processato dal server. Però senza errori di sintassi Session.Contents.Item("strGlobale") viene inizializzata mentre nel database non c'è traccia dell'inserimento del record.

2 - Nel file global.asa la Sub Session_OnStart non viene eseguita solo alla creazione di una nuova sessione? Mi succede una cosa strana: se io eseguo un altro file ASP che utilizza il valore di Session.Contents.Item("strGlobale") vedo il valore che avevo assegnato. Se cambio il file global.asa e faccio un refresh del browser (quindi la sessione dovrebbe essere sempre la stessa, no?) il valore viene subito aggiornato. Come mai?

Grazie in anticipo.

bulabula
11 messaggi dal 16 settembre 2002
Ciao,

Non viene inserito nulla sul database perchè l'istruzione contiene un errore.
strSql = strSql & "'" & strHost "'," <- la virgola non serve!!

Ciao GiangiK
52 messaggi dal 21 gennaio 2002
Hai ragione! Grazie.
Ho corretto e la registrazione della visita funziona.
Non vengono salvate le informazioni REMOTE_ADDR e REMOTE_HOST. Immagino sia perchè sto lavorando in locale, è giusto?

Comunque resta il problema della variabile globale. Sembra che la Sub Session_OnStart venga eseguita ad ogni chiamata del browser. Non è strano?

Grazie ancora.

bulabula
52 messaggi dal 21 gennaio 2002
Ho caricato le pagine in un server di prova. Non riesco a verificare i problemi precedenti a causa di questo errore:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver] Cannot open database '(unknown)'. It may not be a database that your application recognizes, or the file may be corrupt.

Eppure in locale funziona, come può essere corrotti il file di Access? (l'ho anche ripristinato)

bulabula
52 messaggi dal 21 gennaio 2002
Ho risolto.
Il mio hoster non supporta più MDB di Access97 ma solo da Access2000 in poi.

bulabula
85 messaggi dal 15 marzo 2001
Vedo che sei riuscito a far funzionare global.asa su PWS, come hai fatto?
Io ho il mio global.asa nella root principale del sito (conta gli utenti connessi), ma sul mio PC non mi conta nulla (la variabile application("collegati") è semplicemente vuota...), invece quando pubblico il tutto sullo spazio Hosting... mi conta...

Mi aiuti? Grazie

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.