18 messaggi dal 22 aprile 2001
Ciao a tutti, ho un problema con questo frammento di codice di una mia pagina asp in cui c'è un form in cui l'utente deve fare il login......Il problema è nel caso "not rs.eof =true" in cui cioè l'utente ha riempito i campi userid e password e il controllo ne database dovrebbe consentirne l'accesso scrivendo il msg di benvenuto. Invece anche se inserisco uno userid e password corretti mi da sempre il messaggio di errore che ho impostato...Why?
(la sintassi sql è corretta, credo, solo qui non entrava bene).
Grazie a tutti


...
dim SQL
SQL="SELECT * FROM Utenti WHERE UserId = ' "& userid & " ' AND [Password] = ' " & password & " ' "


dim trovati
trovati=false


'apro la connessione
StrConn="Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source = "& Server.MapPath("negozio.mdb")

Set conn=Server.CreateObject("ADODB.Connection")
'Set rs=Server.CreateObject("ADODB.Recordset")
Conn.Open StrConn

'esegue l'istruzione SQL
'rs.Open SQL,conn,0,1
Set rs=conn.Execute(SQL)



'recordTotali=rs.RecordCount
If not rs.eof then ' se il RecordSet non è vuoto
trovati = true Session("User")=userid'nel form
Session("Password")=password 'nel form
Else trovati= false

....
poi inserisco delle istruzione if per controllare se i valori inseriti non sono errati ecc....Cosa non va? (Non ricevo errori quindi presumo non abbia commesso errori di sintassi..bo!?)
137 messaggi dal 05 settembre 2001
Non l'ho provato ma mi sembra giusto. Probabilmente non assegni i valori giusti alle variabili userid e password. Per sicurezza, aggiungi:
Response.Write(SQL)
almeno vedi la query e ti rendi conto se è giusta. Se è giusta, probabilmente è quel [password] che ti crea problemi. Non puoi chiamarlo semplicemente pass?
18 messaggi dal 22 aprile 2001
Ho fatto come hai detto, la stringa che ricevo è questa:
SELECT * FROM Utenti WHERE UserId = ' ' AND Pass = ' '
e ho cambiato il campo Password in Pass ma nulla da fare...altre idee?
103 messaggi dal 31 marzo 2001
prova con
rs.Open SQL,conn, adOpenKeyset



sator arepo tenet opera rotas

sator arepo tenet opera rotas
18 messaggi dal 22 aprile 2001
Già ci avevo provato:stesso risultato..sob :(

279 messaggi dal 08 maggio 2001
Carissimo collega, prova utlizzando questo codice ..... logicamente dove trovi request.form ("----") devi inserire il dato del form


Prova utilizzando questo codice:
<%

user = request.form("user")
password = request.form("password")
Session ("user")= user
Session ("password") = password
dim dbPath
dim conn
dim rs

'setto il path del db
dbPath = Server.MapPath("Area.mdb")

'Creo gli oggetti connessione e recordset lato server
set conn = Server.CreateObject("AdoDb.Connection")
set rs = Server.CreateObject("AdoDb.Recordset")

'Apro la connessione
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& dbPath

SQL ="select * from Dati where user like '" & replace(user,"'","''") & "'"

Set Rs=conn.execute(SQL)

errore=false

if not rs.eof then
user_DB=rs("user")
Password_DB=rs("Pwd")
else
errore=true
end if

if not errore and not (user=user_DB and password=password_DB) then errore=true

'CHIUDI LA CONNESSIONE
if errore then
set rs=nothing
conn.close
set conn=nothing
response.redirect ("http://www.miosito.it/areapromoter.htm")
end if
%>

********************
Webmaster Nationaldjteam
www.nationaldjteam.com
webmaster@nationaldjteam.com
********************
18 messaggi dal 22 aprile 2001
Scusa ma se faccio così non succede che se ho un utente registrato come "Anto" e un altro registrato come "Antonello" si crei ambiguità??

279 messaggi dal 08 maggio 2001
Caro KiKKo,

Non puà succedere quello che dici tu per il semplice fatto che se tu scirvi come user "Anto" ... il sistema ti darà "Anto"
se scrivi invece "Antonello" il sitema ti darà Antonello .... prova e poi fammi sapere .....

Per qualsasi cosa posta !!



********************
Webmaster Nationaldjteam
www.nationaldjteam.com
webmaster@nationaldjteam.com
********************

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.