2013-03-18 4 views
-3

나는 암호 메일을 잊어 버리고 보내고 싶지만 UserName과 같은 빈 메일을 보내고있는 데이터베이스에서 사용자 이름과 암호를 찾을 수 없다는 프로젝트가있다. Password : 나는 사용자 이름과 암호를 찾고 싶다. 3 개 계층 아키텍처 미리 감사이 내 코드에서 데이터베이스 ....데이터베이스에서 암호를 잊어 버리는 방법을 찾으십니까?

protected void Button1_Click(object sender, EventArgs e) 
    { 
     int id = MyRegistration.fgusername(txt_Email.Text.Trim()); 
     if (id > 0) 
     { 
      string sQuery = "Select UserName, Password From Registration Where EmailID = '" + txt_Email.Text + "'"; 

      DataSet ds =DataAccessLayer.ExeSelectQuery(sQuery); 
      try 
      { 
       string sUserName = ""; 
       string sPassword = ""; 
       sendMail(sUserName, sPassword); 
      } 
      catch (Exception ex) { } 
     } 
     else { label1.Text = "Invalid User"; } 
    } 

데이터 액세스 레이어 :

public static int fgusername(string sEmailId) 
     { 
      int id1 = 0; 
      string selectstr = "SELECT UserName, Password FROM Registration WHERE EmailID = '" + sEmailId.Trim() + "'"; 
      id1 = DataAccessLayer.ExecuteReader(selectstr); 
      return id1; 
     } 
+2

메일을 보내기 전에 sUserName 및 sPassword를 공백으로 만 설정합니다. – Popeye

+2

위험 : SQL 주입! ;-) –

+0

사용자 이름과 암호를 선택하는 쿼리에서 ID를받는 방법은 무엇입니까? ('fgusername' 메쏘드를 확인하십시오.) – Damith

답변

1
DataSet ds =DataAccessLayer.ExeSelectQuery(sQuery); 
      try 
      { 

    if(ds .Tables[0].Rows.Count>0) 
       { 
    string sUserName = ""; 
       string sPassword = ""; 
       sUserName = ds.Tables[0].Rows[0]["Username"].ToString(); 
       sPassword = ds.Tables[0].Rows[0]["Password"].ToString(); 
sendMail(sUserName, sPassword); 
       } 
      } 

안녕하세요이 그것은 U 도움이 될 것입니다 희망보십시오 ..

+0

감사합니다. – yash

1

이 코드

string sUserName = ""; 
      string sPassword = ""; 
      sendMail(sUserName, sPassword); 


try 
     { 
      string sUserName = ""; 
      string sPassword = ""; 
      sendMail(sUserName, sPassword); 
     } 
     catch (Exception ex) { throw ex; // throw the exception } 
,536을 실행하여 다른 무엇을 기대합니까
+0

도 그 코드를 – yash

+0

'mail.Body = "안녕,
로그인 정보

사용자 이름 확인하십시오"제거 후 작동하지 않는 그 + sPassword + "

"; mail.IsBodyHtml = true; ' – yash

0

당신은 메일을 보내기 전에 빈 sUsername 및 sPassword을 설정하고, 아래 참조 :

string sUserName = ""; 
string sPassword = ""; 

sendMail(sUserName, sPassword); 

시도는 다음과 같이 할 :

string sUserName = ds.Tables[0].Rows[0]["UserName"].ToString(); 
string sPassword = ds.Tables[0].Rows[0]["Password"].ToString(); 

sendMail(sUserName, sPassword); 
+0

이 코드를 사용한 후 나는 전자 메일을받지 못했습니다. – yash

+0

stacktrace를 파괴하고 있기 때문에 예외가 발생하여 전자 메일을받지 못한 이유와 그 대답을 볼 수있는 이유를 얻을 수 있습니다. – TalentTuner

+0

나는 위 코드로 작동한다. – yash

0

문자열 sUserName = ""; 문자열 sPassword = ""; 이 두 변수를 아무 값없이 초기화하면 SendMail (sUserName, sPassword); 이 변수 값을 그대로 사용하고 있습니다.