Bonjour, je viens de terminer un site en ASP mais il subsiste une dernière petite erreur. Ce n'est pas important mais j'aimerai bien comprendre :
J'ai une page login.asp avec deux champs - Login et - Password justement (le truc classique)
Lorsque le premier champ de la page login.asp est rempli avec le bon code d'accés et le second (password) avec un mauvais je suis redirigé sur login.asp, jusque là c'est normal.
Par contre lorsque je mets un login bidon et un password bidon (par exemple) au lieu de revenir sur login.asp j'ai le message :
ADODB.Fielderreur '800a0bcd'
BOF ou EOF est égal à True ou l'enregistrement actuel a été supprimé. L'opération demandée nécessite un enregistrement actuel.
/jerome/admin/checkadminlogin.asp, ligne 11
Donc base de données ne contenant pas l'enregistrement ...
Pourquoi ça me mets ça alors que je devrais être redirigé sur login.asp ???
La page Login.asp :
<%
Response.Write("<FORM METHOD=""POST"" ACTION=""checkadminlogin.asp"">")
Response.Write("<FORM METHOD=""POST"" ACTION=""checkadminlogin.asp"">")
Response.Write("Veuillez vous identifier <br> Login :")
Response.Write("<INPUT NAME=""loginName"" class=""admin_txt"">")
Response.Write("Password :")
Response.Write("<INPUT TYPE=""PASSWORD"" NAME=""password"" class=""admin_txt"">")
Response.Write("<INPUT TYPE=""submit"" Value=""Login"">")
Response.Write("</FORM>")
%>
</div>
</body>
La page checkadmin.asp :
<%
Response.Buffer = True
SQL = "Select * FROM admin where name='" & Request.Form("loginName") & "'"
cmdDC.CommandText = SQL
Set RecordSet = Server.CreateObject("ADODB.Recordset")
RecordSet.Open cmdDC, , 0, 2
adName = Recordset.Fields("name")
adPass = Recordset.Fields("password")
Session("Logged") = ""
sName=Request.Form("loginName")
sPassword=Request.Form("password")
Response.Write("<CENTER>")
If sNAME=adName AND sPassword=adPass THEN
logininfo=True
session("Loggin") = sNAME
Session("admin") = "YES"
Response.Clear
Response.redirect "index.asp"
Else
Response.Clear
Response.redirect "login.asp"
End If
Recordset.Close
Set Recordset= Nothing
Set cmdDC= Nothing
%>
Je devrai avoir logiquement une redirection sur login.asp si codes erronés et sur index.asp si codes corrects et non pas ce "tudjuuuu" de message d'erreur ...
Merci pour votre aide :)
Ps : J'ai essayé tout un tas de codes javascript avec messages d'alertes mais rien n'y fait.