Salve a tutti!
Conosco un po' di PHP, ma adesso mi sto avvicinando anche ad ASP.
Provando a fare un semplice login collegato ad un db di Access, non riesco a portare avanti una sessione.
Praticamente dalla pagina login.asp passo i dati alla pagina ris.asp, che li analizza e se manca qualcosa torna indietro, altrimenti va avanti nella pagina ok.asp.
Per evitare però che sia inutile il login, avevo pensato di passare una sessione dalla pagina ris.asp alla pagina ok.asp... ma non so perchè non ne vuole sapere di funzionare.![]()
La sintassi per la sessione sono sicuro sia corretta, visto che ho creato 2 pagine per prova solamente con il codice della sessione e funzionano bene.
Vi scrivo il codice delle 3 pagine... se qualcuno mi aiutasse trovando l'errore lo ringrazierei fino alla fine dei miei giorni!
login.asp
ris.aspcodice:<HTML> <HEAD> <TITLE>Prova log-in </TITLE> </HEAD> <BODY> <% if request("Id")="1" then response.write "<center>ATTENZIONE!<center>" response.write "<center>Non sono stati inseriti tutti i dati necessari per il login.<center> " else if request("Id")="2" Then response.write "<center>ATTENZIONE!<center>" response.write "<center>I dati inseriti non sono corretti.<center> " else response.write "" end if end if %> <form method="post" action="ris.asp"> <CENTER><TABLE border=1 style="border-collapse: collapse" cellpadding=2> <TR> <TD>Nome utente:</TD> <TD><input type="text" name="user" size="12" maxlength="10"></TD> </TR> <TR> <TD>Password:</TD> <TD><input type="password" name="code" size="12" maxlength="10"></TD> </TR> <TR> <TD colspan=2><CENTER><input type="submit" name="Submit" value="Accedi"></CENTER></TD> </TR> </TABLE></CENTER> </BODY> </HTML>
ok.aspcodice:<% ' Dichiarazione variabili dim intTest intTest="0" ' Verifico se manca il nome utente if request.form("user")="" or request.form("code")="" then response.redirect "a_ris.asp?Id=1" end if ' Apro il database dim n_user n_user=replace(request.form("user"),"'","''") dim n_code n_code=replace(request.form("code"),"'","''") Set Conn=Server.CreateObject("ADODB.Connection") strConn="driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("user_reg.mdb") Conn.Open strConn sql = "SELECT * FROM user WHERE user='"&n_user&"' AND password='"&n_code&"'" Set rs = Server.CreateObject("ADODB.Recordset") rs.Open sql, conn ,3,3 'verifico che esista davvero if rs.eof then intTest="1" else intTest="2" end if 'chiudo il database rs.Close set rs = Nothing conn.Close set conn = Nothing 'avvviso che il nome è già presente if intTest="1" then response.redirect "a_ris.asp?Id=2" Else response.redirect "ok.asp" Session ("A")="Funziona" end if %>
Grazie per gli eventuali suggerimenti e scusate se il post è venuto un po' lungo.codice:<% a=1 var= Session("A") if a=1 then Response.write var end if %> <html> <head> <title>Log-In </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> -------- Se qui a sinistra c'è scritto qualcosa, significa che tutto funziona. </body> </html>


Rispondi quotando
