Forum de discussion
Forum « Programmation ASP » (archives)
Re: Connexion à une BD et requête sql
Envoyé: 13 mai 2004, 6h13 par PerryLee
la en effet y'a comme un problème j'ai l'impression, ou bien je ne comprend pas ce que tu as voulu faire.
- Déja tes premiers tests verifient la valeur du cookies et non pas des éléments du formulaires ce qui n'est pas très logique. Surtout que ta condition est si t'es cookies contiennent quelque chose alors que ca devrait etre si ils sont vides (veut alors dire que la personne ne s'est jamais identifiés).
- Ensuite tu crées bien un objet recordset avec la requete de verif du login et password mais tu ne regardes pas si elle contient un élément.
Voila ce que te propose :
*********************************************************
<%
Identification = false '-> Booléen t'indiquant si la personne possède ou non un login password valide
if Request.Form("login") <> "" And Request.Form("password") then 'Si ces deux valeurs sont retournées par ton formulaire
'Connexion à la base de données
'------------------------------
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "maBaseDeDonnees"
'Recherche dans la BD des login et mot de passe
'----------------------------------------------
sql = "SELECT * FROM users WHERE login ='" & Request.Form("login") & "' AND password ='" & Request.Form("password") & "';"
Set RsId = Server.CreateObject("ADODB.RecordSet")
RsId.open sql, conn, 1, 1
If Not RsId.EOF Then Identification = true 'Si la requete a renvoyé au moins une occurence alors t'as un couple login/password dans la base
'Je sais plus l'ordre pour la fermeture
RsId.close
set RsId = nothing
end if
if Identification then
if Request.Cookies("login") = "" And Request.Cookies("password") = "" then 'Et que fais-tu si les cookies ne sont pas vide ?
Response.Cookies("login")=login
Response.Cookies("password")=password
<!--#include virtual="page_accueil.asp"-->
end if
else
%>
Ma page html contenant le formulaire avec login et mot de passe
<%end if%>
*********************************************************
Il y a peut-etre des choses que je n'ai pas capté dans ce que tu voulais faire et que donc ce qu'il y a ci dessus ne te convienne pas.
Dans ce cas, désolé.
Sinon, il reste encore des petites choses à revoir, notamment las gestion des cookies.
Et dans la page avec le formulaire login/mot de passe, penses à faire une vérification javascript de la valeur des champs (s'ils sont remplis).
J'espère que j'ai pu t'être utile à quelque chose.
A+
Réponses
|