Formulaire d'authentification en asp

Résolu/Fermé
asile38 Messages postés 69 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 18 juin 2009 - 18 mai 2009 à 10:42
asile38 Messages postés 69 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 18 juin 2009 - 26 mai 2009 à 10:27
Bonjour,
Je suis novice en asp, et je voudrais faire une authentification des utilisateur sur un serveur iis avant leur connexion sur internet.
Jai deja mis au point un formulaire en html qui fonctionne, maintenant je dois me connecter à ma bdd acces et verifier que les nom prenom et mot de passe soient bien les meme que dans la base de donnée.
Pour le moment, avec ce que j'ai trouvé sur internet, j'ai mis au point ce code qui ne fonctionne pas:
<html>

 <head>
 <title>ACCES</title>
 </head>

 <body>

 <%
 dim conn
dim sql
dim rs
dim TNOM, TPRENOM, TMDP
dim qui
dim ok

 ok=0

 on error resume next
 set conn=server.createobject("ADODB.Connection")
 conn.open "WebAgents"

 sql="select Nom, Prenom, Password FROM MotDePasse ;" // Mettre le nom de la table ou reqête adéquate à la place de Agents

 set rs=server.createobject("ADODB.recordset")
 rs.open sql,conn,3,3
 if not rs.eof then
 if rs.recordcount>0 then
 rs.movefirst
 do while not rs.eof
 TNom=rs.fields("Nom")
 if lcase(NoID)=lcase(TNom) then
 TPRENOM=rs.fields("PRENOM")
 TMDP=rs.fields("MDP")
 if TMDP=password then
 ok=-1
 response.Redirect "main.asp?Nom="&chr(34)&TNOM&chr(34)&"&Prenom="&chr(34)&TPRENOM&chr(34)
 response.flush
 response.end
 end if
 end if
 rs.movenext
 loop
 else
 response.write("<B>la base est vide</B>")
 end if
 end if
 rs.close
 conn.close
 set conn=nothing
 if ok=0 then response.write("Mot de passe ou NoID erroné")
 %>

 </body>

 </html>



J'aimerais que si la connexion est bonne, mon client sera redirigé vers google, mais dans le cas contraire, il retournera sur la page d'authentification.

4 réponses

asile38 Messages postés 69 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 18 juin 2009 5
26 mai 2009 à 10:27
Pour ceux que ca interesse, j'ai reussi!!!!
j'ai donc fait un formulaire d'authentification en html, jusque la rien de bien compliqué, ensuite j'ai faiyt mon programme de validation du formulaire en asp, qui me permet de controler l'authentification, et de repertorier le nom des personnes ainsi que la date à laquel elles se sont connecté, alors pour ceux qui comme moi cherchent de l'aide et n'en trouve pas, je vous met mon code:
<%@ Language=VBScript%>
<%option explicit
Response.Buffer=true%>
<%
DIM Conn
DIM RS
DIM sql
DIM Nom
DIM Prenom
DIM pwd
DIM InSQL

<!-- Recuperation des données du formulaire-->

Nom = Request.Form("Nom")
Prenom = Request.Form("Prenom")
pwd = Request.Form("password")

<!-- Connexion au serveur-->

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.mappath("SergentBerthet.mdb")

<!-- Requete sur la base de données-->

set RS=server.createobject("ADODB.recordset")
SQL = "SELECT * FROM MotDePasse WHERE password='"&pwd&"' AND Nom='"&Nom&"' AND Prenom='"&Prenom&"'"
RS.Open SQL,Conn,3,3
response.Write "<hr>"&SQL&"<hr>"

 <!--Correspondance entre la requete et les informations du formulaire-->

if RS.eof then
  response.redirect("Formulaire3.html")
else
InSQL="INSERT INTO connections(Nom,quand) VALUES('"&Nom&"',#"&Now()&"#)"
Conn.Execute(InSQL)
   Conn.Close:Set Conn=Nothing
  response.redirect("https://www.google.fr/?gws_rd=ssl")
end if

Conn.close
%>
2
asile38 Messages postés 69 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 18 juin 2009 5
18 mai 2009 à 13:15
up
0
asile38 Messages postés 69 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 18 juin 2009 5
19 mai 2009 à 08:55
En realité je crée une borne informatique qui tourne en asp, et mes clients ont acces à internet par un petit bouton que j'ai fait directement rediriger vers ma page d'application, ils n'ont pas de barre pour tapper une url. Donc je pense que ca doit etre realisable.
J'ai revu un peu mon programme, et maintenat, il donne ca:
[CODE]
<%@ Language=VBScript %>
<%option explicit
Response.Buffer=true%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250">
<meta http-equiv="Content-Language" content="sk">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title></title>
<link rel="stylesheet" type="text/css" href="css/main.css">
</head>

<body>


<%
<!--Recuperation des données du formulaire-->
Request.Form("Nom")
Request.Form("Prenom")
Request.Form("Password")



DIM Conn
DIM RS
DIM rstemp
DIM Bset
DIM Blink
DIM requete
DIM reponse
DIM dbPath
DIM cnpath

<!--Connexion au serveur-->



dbPath = Server.MapPath("127.0.0.1/authentification/SergentBerthet.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.mappath("SergentBerthet.mdb")&"; Persist Security Info=False"

%>
<%


<!--Requete sur la base de données-->
set RS=server.createobject("ADODB.recordset")

RS.Open "SELECT Nom, Prenom, MotDePasse FROM MotDePasse ", Conn, 3, 3



<!--Correspondance entre la requete et les informations du formulaire-->
if RS.recordcount = 0 then
RS.Redirect("Formulaire.html")
else
RS.Redirect("www.google.fr")
end if



con.close


%>
</body>
</html>

/CODE

De plus, j'aimerai si c'est possible, que les connexions soient enregistrés sur la base de données.
Merci
0
asile38 Messages postés 69 Date d'inscription lundi 20 avril 2009 Statut Membre Dernière intervention 18 juin 2009 5
19 mai 2009 à 10:26
Alors voila, j'ai encore modifier mon code, suite à des erreurs, mais la, je n'ais plus de probleme de connexion, ni de requete, mais quand je rentre un bon login et un bon mot de passe, il me redirige automatiquement vers mon formulaire, alors qu'il devrait m'envoyer vers google. je ne suis pas sur de ce que j'ai ecrit dans mon programme, si quelqu'un pouvait me donner des idées, voici mon if:
Code :
 
if not RS.eof then
  response.redirect("Formulaire.html")
else
  response.redirect("www.google.fr")
end if
0