Voici une petite procèdure pour sécuriser un peu l'accès à un site ou portion de site.
Il faut créer une base Access avec la table "Agents" minimale suivante :
Nom
Prenom
MDP
Et créer un lien DSN système à cette base sous le nom de "WebAgents"
Source / Exemple :
Index.asp
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>ACCES AU MODULE ...</title>
</head>
<body>
<BR>
<p align="center">
<center>
<form name=login action="logon.asp" method="POST">
<table align="center" valign="center">
<tr><td>Nom:</td><td><input type="TEXT" name="NoID"></td></tr>
<tr><td>Mot de passe:</td><td><input type="password"name="password"></td></tr>
<tr><td colspan=1 align=center>
<input type="submit" value="Login!"></td></tr>
</table>
</form>
</center>
</html>
Logon.asp
<%
function crypter(s)
dim i
dim temp
for i=1 to len(s)
temp=temp+chr(asc(mid(s,i,1)) xor 33)
next
crypter=temp
end function
password=crypter(Request.Form("password"))
NoID=Request.form("NoID")
%>
<html>
<head>
<title>ACCES</title>
</head>
<body>
<%
dim conn
dim sql
dim rs
dim TNOM, TPRENOM, TTEL, TNIVEAU, TSERVICE, TMDP
dim qui
dim ok
ok=0
on error resume next
set conn=server.createobject("ADODB.Connection")
conn.open "WebAgents"
sql="select * from Agents;" // 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>
main.asp
<%Response.Buffer = True
dim TNom
dim TPrenom
dim id
TNom=request("Nom")
TPrenom=request("Prenom")
id=mid(TPrenom,2,len(TPrenom)-2) &" "&mid(TNom,2,len(TNom)-2)
%>
<html>
<head>
<meta http-equiv="Content-Language" content="fr">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Administration ...</title>
</head>
<body>
<p align="left"><font size="1">Bienvenue <% =id %></font>
La suite du code ici
</body>
</html>
Conclusion :
A+
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.