1 messaggio dal 30 gennaio 2017
Buongiorno a tutti,
sono nuovo del forum e vorrei chiedere delle spiegazioni in merito ad un codice che ho trovato girando su internet:

<%@LANGUAGE = JScript%>
<%
var azione = new String(Request.QueryString("azione"));
%>
<html>
<head>
<title>Login</title>
</head>
<body>

<%
if (azione == "OK")
{
var username = new String(Request.Form("username"));
var password = new String(Request.Form("password"));
var username2 = username.replace(/'/g,"''");
var password2 = password.replace(/'/g,"''");
var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("Login.mdb"));
var Sql = "SELECT * FROM Utenti WHERE username = '" + username2 + "' AND password = '" + password2 + "'";
var EseguiLogin = Cn.Execute(Sql);
if (EseguiLogin.EOF)
{
Cn.Close();
Response.Write("ACCESS DENIED");
Response.End;
}
else
{
Cn.Close();
Session("username") = username;
with (Response)
{
Write("<p align='center'>");
Write("Benvenuto " + username + "!<br><br>");
Write("Clicca <a href='areaprivata.asp'>qui</a> per entrare!");
Write("</p>");
}

}
}
else
{
%>
<form method="post" action="login.asp?azione=OK">
<p align="center">

<font color="#0000CC">Username</font>

<input name="username" type="text" size="10">


<font color="#0000CC">Password</font>

<input name="password" type="password" size="10">


<input type="submit" value="Login">
<input type="reset" name="Submit" value="Cancella">

</form>
</p>
<%
}
%>
</body>
</html>

Premettendo che ho preparato già la pagina di area riservata che crea una sessione rispetto allo username e che ho già preparato il file Login.mdb in Access con ID, username e password:

<%@LANGUAGE = JScript%>
<%
if (Session("username") == null)
{
Response.Write("ACCESSO NEGATO");
Response.End;
}
else
{
/*
Ci connettiamo al database e, a seconda dell'Applicazione per cui ci serviamo
di un'area di accesso riservato, recuperiamo i dati dell'utente loggato basandoci
sulla sessione che ha generato, ad esempio:

var Sql = "SELECT * FROM una_tabella WHERE
username = '" + Session("username") + "'";
*/
%>
<html>
<head>
<title>Login</title>
</head>
<body>

<p align="center">AREA PRIVATA</p>

</body>
</html>
<%
}
%>

Quando vado ad inserire Username e Password (presenti nel database Login.mdb) non succede assolutamente nulla.
Infatti non mi è chiaro questo:

var username2 = username.replace(/'/g,"''");
var password2 = password.replace(/'/g,"''");
var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("Login.mdb"));
var Sql = "SELECT * FROM Utenti WHERE username = '" + username2 + "' AND password = '" + password2 + "'";

Qualcuno potrebbe spiegarmelo oppure può dirmi dove ho sbagliato? Sono alle prime armi e spero che abbiate un pochino di pazienza.
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.