02. september 2005 - 00:06
Der er
11 kommentarer og 1 løsning
problemmer med login
hej eksperter jeg har et lille problem med et login script jeg har ville lave til min side, jeg skulle mene at fejlen lå i min if sætning, fordi, jeg er ikke helt sikker på hvordan man styre hvilken row min reader selecter i DB.. well her kommer koden protected void ImageButton1_Click(object sender, ImageClickEventArgs e) { string strConnection = "Provider=Microsoft.jet.OleDB.4.0;"; strConnection += @"Data Source=" + Server.MapPath("cms.mdb"); string getSQL = "SELECT user_id , password FROM users WHERE username='"+LoginUserName.Text+"'"; OleDbConnection objConnection = new OleDbConnection(strConnection); OleDbCommand objCommand = new OleDbCommand(getSQL, objConnection); OleDbDataReader objReader = null; objConnection.Open(); objReader = objCommand.ExecuteReader(); //tror det er objReader[3] den er gal med :) if(objReader[3] == LoginPassword.Text) { Session.Add("user_idfraDB", 1); } }
Annonceindlæg fra Academic Work Denmark A/S
02. september 2005 - 00:40
#1
prøv om password ikke ligger på index 1
02. september 2005 - 00:42
#2
Metoden er overloaded, så objReader["password"] virker muligvis også
02. september 2005 - 00:46
#3
Det er nok også værd at kontrollere, om der overhovedet er returneret noget if(objReader.HasRows && objReader[1] == LoginPassword.Text)
02. september 2005 - 00:54
#4
hvis jeg skriver mit login og password som ligger i min DB så giver den mig den her fejl:: No data exists for the row/column. hvis jeg bare taster noget ind så virker det fint
02. september 2005 - 00:54
#5
nogen ide ?
02. september 2005 - 00:57
#6
hvis jeg bare taster noget ind så virker det fint.. mener noget tilfældigt.. så gør den som den skal ( loger ikke ind) og laver ingen fejl
02. september 2005 - 00:57
#7
Jeg har lige bladret lidt i MSDN, prøv sådan: if(objReader.Read() && (String)objReader[1] == LoginPassword.Text) ellers vent på arne :)
02. september 2005 - 01:04
#8
cool det virker sku dog ikke med tal som index på DB rækkerne. men sådan her if( objReader.Read() && (string)objReader["password"] == LoginPassword.Text) hvad gør (strin) i forhold til .Tostring() ??
02. september 2005 - 01:05
#9
husk et svar :D
02. september 2005 - 01:42
#10
(string) er en cast, så den fejler (smider en InvalidCastException), hvis feltet er af type, som ikke kan castes til en streng. ToString er specifik til datatypen, så den vil også virke selvom det ikke er en streng int i = 2; string s = (string)i; // går ikke string s = i.ToString(); // virker
07. september 2005 - 19:19
#11
kast lige et svar ksoren!
20. februar 2006 - 16:55
#12
giv mig en priv message hvis du vil have dine points som du har fortjent. lukker
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.