Salve a tutti è la prima pagina asp che faccio, mi ero occupato in passato di fare siti web, ma si trattava di siti semplici.
Dunque io devo creare un area riservata, ho visto diversi tutorial in internet ed ecco come è fatta la mia pagina:
pagina index.asp
<HTML>
<HEAD>
<TITLE>Autenticazione utente tramite password</TITLE>
</HEAD>
<BODY BGCOLOR=#BBBBFF>
<BR><BR><BR><BR><BR>
<FORM ACTION="login.asp" METHOD="POST">
<TABLE ALIGN=CENTER BORDER=0 BGCOLOR=#000000>
<TR BGCOLOR=#EEEEEE>
<TD WIDTH=150 ALIGN=CENTER>NOME UTENTE</td>
<TD>
<INPUT TYPE=TEXT NAME="nome_utente" SIZE=20>
</td>
</TR>
<TR BGCOLOR=#EEEEEE>
<TD WIDTH=150 ALIGN=CENTER>PASSWORD</td>
<TD>
<INPUT TYPE=PASSWORD NAME="password" SIZE=20>
</TD>
</TR>
<TR BGCOLOR=#EEEEEE>
<TD HEIGHT=30 COLSPAN=2 ALIGN=CENTER>
<INPUT TYPE=SUBMIT NAME="show" VALUE="LOGIN">
</TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>
pagina login.asp
<%
Dim nome_ut
Dim pass
nome_ut = Replace(Request.Form("nome_utente"), "'", "''")
pass = Replace(Request.Form("password"), "'", "''")
Dim cn
Set cn = Server.CreateObject("ADODB.Connection")
cn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("http://www.circolonauticolillatro.it/prova/utenti.mdb")
Dim sql
sql = "SELECT ID FROM Utenti WHERE NOMEUTENTE='" &nome_ut&_
"' AND PASSWORD='" &pass& "'"
Dim rs
Set rs = cn.Execute(sql)
if rs.eof then
Response.Redirect("index.asp")
else
Session("Autenticato") = "OK"
Response.Redirect("riservato.asp")
end if
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
%>
pagina riservato.asp
<%
if Session("Autenticato")<>"OK" then
Response.Redirect("index.asp")
end if
%>
<HTML>
<HEAD>
<TITLE>Area riservata</TITLE>
</HEAD>
<BODY BGCOLOR=#BBBBFF>
<BR><BR><BR><BR><BR>
<DIV ALIGN=CENTER><H1>PAGINA RISERVATA</H1><BR>
<H2>UTENTE AUTENTICATO</H2><BR></DIV>
</BODY>
</HTML>
infine ho un database utenti.mdb
Il problema è il seguente.
Metto i miei file nel mio spazio remoto, visualizzo la pagina index.asp, ma quando faccio invia visualizzo in nuova pagina tutto il codice di login.asp come se fosse un file di testo.
Se provo a montare le pagine in locale con babywebssl ottengo il seguente errore dopo aver fatto invia:
Script error detected at line 8.
Source line: cn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("http://www.circolonauticolillatro.it/prova/utenti.mdb")
Description: [Microsoft][Driver ODBC Microsoft Access] Nome file non valido
ILLUMINATEMI!!!
Dunque io devo creare un area riservata, ho visto diversi tutorial in internet ed ecco come è fatta la mia pagina:
pagina index.asp
<HTML>
<HEAD>
<TITLE>Autenticazione utente tramite password</TITLE>
</HEAD>
<BODY BGCOLOR=#BBBBFF>
<BR><BR><BR><BR><BR>
<FORM ACTION="login.asp" METHOD="POST">
<TABLE ALIGN=CENTER BORDER=0 BGCOLOR=#000000>
<TR BGCOLOR=#EEEEEE>
<TD WIDTH=150 ALIGN=CENTER>NOME UTENTE</td>
<TD>
<INPUT TYPE=TEXT NAME="nome_utente" SIZE=20>
</td>
</TR>
<TR BGCOLOR=#EEEEEE>
<TD WIDTH=150 ALIGN=CENTER>PASSWORD</td>
<TD>
<INPUT TYPE=PASSWORD NAME="password" SIZE=20>
</TD>
</TR>
<TR BGCOLOR=#EEEEEE>
<TD HEIGHT=30 COLSPAN=2 ALIGN=CENTER>
<INPUT TYPE=SUBMIT NAME="show" VALUE="LOGIN">
</TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>
pagina login.asp
<%
Dim nome_ut
Dim pass
nome_ut = Replace(Request.Form("nome_utente"), "'", "''")
pass = Replace(Request.Form("password"), "'", "''")
Dim cn
Set cn = Server.CreateObject("ADODB.Connection")
cn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("http://www.circolonauticolillatro.it/prova/utenti.mdb")
Dim sql
sql = "SELECT ID FROM Utenti WHERE NOMEUTENTE='" &nome_ut&_
"' AND PASSWORD='" &pass& "'"
Dim rs
Set rs = cn.Execute(sql)
if rs.eof then
Response.Redirect("index.asp")
else
Session("Autenticato") = "OK"
Response.Redirect("riservato.asp")
end if
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
%>
pagina riservato.asp
<%
if Session("Autenticato")<>"OK" then
Response.Redirect("index.asp")
end if
%>
<HTML>
<HEAD>
<TITLE>Area riservata</TITLE>
</HEAD>
<BODY BGCOLOR=#BBBBFF>
<BR><BR><BR><BR><BR>
<DIV ALIGN=CENTER><H1>PAGINA RISERVATA</H1><BR>
<H2>UTENTE AUTENTICATO</H2><BR></DIV>
</BODY>
</HTML>
infine ho un database utenti.mdb
Il problema è il seguente.
Metto i miei file nel mio spazio remoto, visualizzo la pagina index.asp, ma quando faccio invia visualizzo in nuova pagina tutto il codice di login.asp come se fosse un file di testo.
Se provo a montare le pagine in locale con babywebssl ottengo il seguente errore dopo aver fatto invia:
Script error detected at line 8.
Source line: cn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("http://www.circolonauticolillatro.it/prova/utenti.mdb")
Description: [Microsoft][Driver ODBC Microsoft Access] Nome file non valido
ILLUMINATEMI!!!