5 messaggi dal 05 marzo 2011
Salve avrei bisogno di aiuto per creare una pagina di login in asp
il problema è che mi da questo tipo di errore

Errore di run-time di Microsoft VBScript error '800a01a8'

Necessario oggetto: ''

/foglio firme/ins_ore.asp, riga 50

nella riga specificate c'è l'apertura del recod set e prima sono state chiusi tutti gli oggetti

incollo anche tutto il codice in questione

dim usd, pwd,cod_prod,con,rs,sql,okcod, trovato
usd=trim(ucase(request("usd")))
pwd= trim(ucase(request("pwd")))


Set Conn = Server.CreateObject("ADODB.Connection")
Conn.ConnectionString="DRIVER={Microsoft Access Driver (*.mdb)};" & "DBQ=" & Server.Mappath("operatori.mdb")
Conn.Open
sql= "select * from accesso where user='" & user &"' and password='" & pwd &"'"
rs.open sql,con,0,1
trovato=false
do until rs.eof or trovato=true
if rs.fields("user")=user and rs.fields("password")=pwd then
response.write "Benvenuto" & usd & "</br>"
session ("id_utente")=rs.fields("usd")' CREO UNA VARIABILE DI SESSIONE CHE CONTIENE L'USER DELL'OPERATORE. QUESTO PERCHE' L'AREA DI SESSIONE E' RISERVATA SOLO SE L'UTENTE HA FATTO IL LOGIN
response.end ()
end if
rs.movenext
loop
if trovato= false then
response.write "nome utente e password errati, riprova"
response.write"<a href=login.asp> Ritorna alla pagina di accesso</a>"
response.end
end if
rs.close
set rs=nothing
con.close
set con=nothing

grazie mille in anticipo per l'aiuto
Il file che riporti è ins_ore.asp? Qual è la riga 50?
C'è un problema di virgolette forse...

Suggerimento 1: Raddoppia gli apici eventualmente contenuti in usd e pwd per evitare sql injection
Suggerimento 2:Aggiungi trovato=true quando l'utente viene trovato per ottimizzare il do/until

Ormai programmano tutti... ma la professionalità appartiene a pochi
5 messaggi dal 05 marzo 2011
Grazie mille per la celere risposta.
L'errore continua a darlo ancora anche inserendo doppi apici in pwd e usd, la riga 50 è in corrispondenza all'apertura del record set dopo il sql:
sql= "select * from accesso where user='" & user &"' and password='" & pwd &"'"
rs.open sql,con,0,1.
Ricontrolla la stringa di connessione
www.connectionstrings.com
(prova a scriverla in chiaro prima di procedere)

o forse:
rs.open sql,con,0,1
non è Conn?

Ormai programmano tutti... ma la professionalità appartiene a pochi

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.