begin process at 2012 05 28 05:22:01
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ASP & ASP.NET

 > 

Archives ASP & ASP.NET

 > 

Base de données

 > 

Probleme bd


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme bd

jeudi 3 mars 2005 à 17:33:05 | Probleme bd

Jackboy

Bonjour !


J'ai une bd et via un login je tente de me connecter. J'ai des champs entrer dans ma bd, mais quelques un ne fonctionne pas, et je ne sais pas pk ! Ces comme si les enregistrement ne serait pas valide !!! Ex.: strLogin  = admin et strPassword  = test ces ok mais
strLogin = test et strPassword  = test n'entre pas !!!! Pourtant ces deux usagers sont bien entrer dans la bd !


  strSQL = "SELECT * FROM USER_DESC "
  strSQL = strSQL & "WHERE USER_LOGIN_NAME = '" & strLogin & "'"
  strSQL = strSQL & "  AND USER_PASW = '" & strPassword & "'"


jeudi 3 mars 2005 à 18:41:20 | Re : Probleme bd

Nurgle

Membre Club Administrateur CodeS-SourceS
Salut
Je te conseille d'éviter le WHERE ... AND ...
Fait plutôt :

strSQL = "SELECT * FROM USER_DESC "
strSQL = strSQL & "WHERE USER_LOGIN_NAME = '" & strLogin & "'"
set Res=TaConnection.Execute(strSQL)
 If Res.EOF=false Then ' tu tests si il y a bien un gars nommé strLogin
  If Res("password") = strPassword Then
Response.Write("cool, ça marche !")
end if
end if

Comme ça la conparaison des passwords se fait avec des variables et plus avec du sql...


Nurgle
C'est une grande folie que de vouloir être sage tout seul !
jeudi 3 mars 2005 à 20:59:04 | Re : Probleme bd

Jackboy

je sais qu'il y a des facon de faire différente, mais ma question réside dans le fait qu'un enregistrement sur 2 fonctionne !! ces sa que je ne comprend pas !! Il sont bien entrer dans la bd et sa ne fonctionne pas....

jeudi 3 mars 2005 à 21:06:22 | Re : Probleme bd

Jackboy

meme avec ton code il ne trouve pas l'enregistrement, le nom de l'usager... je sais pas ce qu'il ce passe !!!

jeudi 3 mars 2005 à 21:20:04 | Re : Probleme bd

Nurgle

Membre Club Administrateur CodeS-SourceS
Et avec tout sur une seule ligne ?

strSQL = "SELECT * FROM USER_DESC WHERE USER_LOGIN_NAME = '" & strLogin & "' AND USER_PASW = '" & strPassword & "'"

On sait jamais...


Nurgle
C'est une grande folie que de vouloir être sage tout seul !
jeudi 3 mars 2005 à 21:38:31 | Re : Probleme bd

Jackboy

non pas plus !! ces qu'un enregistrement entre et pas l'autre je suis perdu la !!!

jeudi 3 mars 2005 à 23:57:02 | Re : Probleme bd

Yopyop


Est-tu sûr qu'il n'y a pas de différence entre ce que tu as dans tes variables et dans ta base de données ?

As-tu essayé avec d'autres données que celles que tu nous montre
Ex.:
strLogin  = admin et strPassword  = test ces ok mais
strLogin = test et strPassword  = test

Peut-être admin dans ta base est écrit Admin, ou il y a un espace avant ou après???

Essaye avec d'autres données de ta base.

En ce qui concerne le
strSQL = "SELECT * FROM USER_DESC "
strSQL = strSQL & "WHERE USER_LOGIN_NAME = '" & strLogin & "'"
set Res=TaConnection.Execute(strSQL)
 If Res.EOF=false Then ' tu tests si il y a bien un gars nommé strLogin
  If Res("password") = strPassword Then
Response.Write("cool, ça marche !")
end if
end if

de Nurgle, c'est à éviter (mauvaise performance) et en plus ca ne fonctionne pas (s'il y a plus personnes avec le même USER_LOGIN_NAME).

C'est quoi comme BD ?
yopyop
vendredi 4 mars 2005 à 03:23:17 | Re : Probleme bd

Jackboy

base de donnée access ! jai vérifier et revérifier, quelques un fonctionne et quelque autre non. Je trouve sa vraiment bizarre...

Mon systeme (intranet) demande un login ce qui est fonctionnel sur ce cote, tous les usagers sont reconnu, mais j'utilise un genre appli gréfé a mon systeme, qui lui à été fait par un consortium. J'ai vérifié leur programmation (code si haut) et tous me semble ok. Je vais vous mettre ce qui a dans ma page, le bout de code !



Dim strLogin
  Dim strPassword
  Dim strSQL
  Dim MyConn
  Dim RS
  Dim filesys
  Dim readfile
  Dim strContent
  Dim intContent
  Dim intPosition 
  Dim strFile 
  Dim intSearchVariable 

  'récupération des données du formulaire
  strLogin = cstr(Request.form("lName"))
  sLangue  = Request.Form("langue")
  strPassword = cstr(Request.form("password"))

  'Trouver le chemin d'accès au répertoire
  Session("GLOBAL_CHEMIN") = server.mappath(".")&"\" 
  strFile = server.mappath(".")&"\m3cat.ini"
  
  'lecture du fichier d'initialisation
  Set filesys = CreateObject("Scripting.FileSystemObject") 
  Set readfile = filesys.OpenTextFile(strFile, 1, false)
 
  If readfile.AtEndOfStream = True Then
    readfile.close
    Set readfile = Nothing
    Set readfile = filesys.OpenTextFile(strFile, 1, false)   
  End If 
  strContent = readfile.ReadLine
  strContent = Trim(strContent)
  intContent = Len(strContent)   
  intSearchVariable = Instr(strContent, "[database]")
  If intSearchvariable < 1 Then
    While intSearchVariable < 1
      strContent = readfile.ReadLine
      intSearchVariable = Instr(strContent, "[database]")
      intContent = Len(strContent)
    Wend
  End If 
  Session("GLOBAL_DB") = Right(strContent, intContent-intSearchVariable-9)
 
  If readfile.AtEndOfStream = True Then
    readfile.close
    Set readfile = Nothing
    Set readfile = filesys.OpenTextFile(strFile, 1, false)   
  End If
  strContent = readfile.ReadLine
  strContent = Trim(strContent)
  intContent = Len(strContent) 
  intSearchVariable = Instr(strContent, "[connection]")
  If intSearchvariable < 1 Then
    While intSearchVariable < 1
      strContent = readfile.ReadLine
      intSearchVariable = Instr(strContent, "[connection]")
      intContent = Len(strContent)
    Wend
  End If 
  Session("GLOBAL_CONNECTION") = Right(strContent, intContent-intSearchVariable-11)
 
  If readfile.AtEndOfStream = True Then
    readfile.close
    Set readfile = Nothing
    Set readfile = filesys.OpenTextFile(strFile, 1, false)   
  End If
  strContent = readfile.ReadLine
  strContent = Trim(strContent)
  intContent = Len(strContent) 
  intSearchVariable = Instr(strContent, "[softmap]")
  If intSearchvariable < 1 Then
    While intSearchVariable < 1
      strContent = readfile.ReadLine
      intSearchVariable = Instr(strContent, "[softmap]")
      intContent = Len(strContent)
    Wend
  End If 
  Session("GLOBAL_SOFTMAP") = Right(strContent, intContent-intSearchVariable-8)
   
  readfile.close
  Set readfile = Nothing
  Set filesys = Nothing
  
  'création et ouverture d'une connexion
  Set MyConn = Server.CreateObject("ADODB.Connection") 
  MyConn.Open Session("GLOBAL_CONNECTION")
  Set session("MyConn") = MyConn 
  
  
  '********************************************************
  ' ICI QUE SA (*%###@@*&?
  '********************************************************
  strSQL = "         SELECT * FROM USER_DESC "
  strSQL = strSQL & "WHERE USER_LOGIN_NAME = '" & strLogin & "'"
  strSQL = strSQL & "  AND USER_PASW = '" & strPassword & "'"
  Set RS = MyConn.Execute(strSQL)

  If RS.EOF Then
    Response.Redirect("login.asp?Incorrect=True") 
  Else   
    Session("GLOBAL_user_role_code") = RS("USER_ROLE_CODE")
    Session("GLOBAL_cult_prof_id") = RS("CULT_PROF_ID")
    Session("GLOBAL_defl_temp_id") = RS("DEFL_TEMP_ID")
    Session("GLOBAL_user_login_name") = strLogin
   
    RS.Close

    strSQL = "         UPDATE USER_DESC "
    strSQL = strSQL & " SET USER_SESSION = "&Session.SessionID
    strSQL = strSQL & " WHERE USER_LOGIN_NAME = '"&strLogin&"'"
    Set RS = MyConn.Execute(strSQL)

    Application.Lock
    Dim MyArray
    Dim i
    Dim Found
    Found = "N"
    MyArray = Application("arrSessionID")
    if Application("Nbr_session") > 0 then
      for i=0 to Application("Nbr_session")-1
        if clng(MyArray(i)) = clng(Session.SessionID) then
          Found = "Y"
          'Response.Redirect("login.asp?Incorrect=True")
        end if
      next
      if Found = "N" then
        Application("Nbr_session") = Application("Nbr_session") + 1
        Redim Preserve MyArray(Application("Nbr_session"))
        MyArray(Application("Nbr_session")-1) = Session.SessionID
      end if
    else
      Application("Nbr_session") = 1
      Redim MyArray(Application("Nbr_session"))
      MyArray(Application("Nbr_session")-1) = Session.SessionID
    end if
    Application("arrSessionID") = MyArray
    Application.UnLock   
   
    Response.Redirect("GENR_welc.asp?lang=1")
   
  End If%>

<%'RS.Close
  'Set RS = Nothing
%>

vendredi 4 mars 2005 à 19:49:45 | Re : Probleme bd

Yopyop

D'abord j'espère que tes users on tous un login différent, ensuite tu peux remplacer

  strLogin = cstr(Request.form("lName"))
  sLangue  = Request.Form("langue")
  strPassword = cstr(Request.form("password"))

par 

  strLogin = Trim("" & Request.form("lName"))
  sLangue  = Trim("" & Request.Form("langue")
  strPassword = Trim("" & Request.form("password"))

Question:
C'est à la ligne
  If RS.EOF Then
    Response.Redirect("login.asp?Incorrect=True")  <- ici
que ca ne fonctionne pas ou ensuite  (problème sql ou de gestion des sessions ?)?

De plus il me semble que....
Est-ce que tu as un system de logout pour virer la session du user ?

Essaye de fermer tout tes browsers entre chaque tests, sinon la session.sessionID reste en mémoire (si je me souviens bien, elle est propre au browser, donc tant que te ne le ferme pas, la session.sessionid existe toujours), ou alors fais une page pour vider ta table USER_DESC (champs session) et retest....

Mais ferme tes browser....

yopyop


Cette discussion est classée dans : bd, test, strlogin, strsql, strpassword


Répondre à ce message

Sujets en rapport avec ce message

Listes liées a choix mltiples + BD Access [ par fseb ] Bonjour voila ce que je voudrais faire merci a tout ceux qui pourront m'aider :Moi ce que je veux concretement c'est que par exemple dans la liste 1 t Listes liées a choix mltiples + BD Access [ par fseb ] Bonjour voila ce que je voudrais faire merci a tout ceux qui pourront m'aider :Moi ce que je veux concretement c'est que par exemple dans la liste 1 t Listes liées a choix mltiples + BD Access [ par fseb ] Bonjour voila ce que je voudrais faire merci a tout ceux qui pourront m'aider :Moi ce que je veux concretement c'est que par exemple dans la liste 1 t Listes liées a choix mltiples + BD Access [ par fseb ] Bonjour voila ce que je voudrais faire merci a tout ceux qui pourront m'aider :Moi ce que je veux concretement c'est que par exemple dans la liste 1 t Listes liées a choix mltiples + BD Access [ par fseb ] Bonjour voila ce que je voudrais faire merci a tout ceux qui pourront m'aider :Moi ce que je veux concretement c'est que par exemple dans la liste 1 t Ajout Enregistrement BD [ par dan05 ] Salut à tous,j'ai une requete de ce type :SQLQuery= "INSERT INTO annuaire (Nom, Prenom, Societe) "SQLQuery= SQLQuery & "VALUES( '" &Nom& "','"&Prenom& Transfert de donnees entre 2 BD SQL Server 2000! [ par ludo ] Bonjour, j ai un leger pb!Voila j ai deux bases de donnees SQL server 2000. Je veux recuperer certaines donnees d une ou +sieur tables d une BD et les asp insertion BD [ par yann56 ] je crée une requete pour inscrire des dnnées dans la base du type SQLQUERY = "INSERT INTO client(nom_client, prenom_client, )VALUES('" & nom & "', '" BD locale et réseau [ par guilloo ] Salut, j'ai une appli sous VB6 qui me met à jour des Bases de Données Access, mais maintenant je doit faire la même appli en réseau via Internet, je v chaine vide [ par Cloe ] Bonjour,j'essaie de faire un test sur une chaine de caractères que je récupère sur une base de données.J'ai essayé if rs(ch)=""if rs(ch)=" "if rs(ch)=


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales