안녕하세요. 초보 유저 입니다.
로그인 부분을 마스터를 연결해서 만들었습니다.
마스터 Top 부분에 로그인했으면 로그아웃이되고 로그인을 안했으면 로그인 페이지로 넘어가는 버튼을 만들어 두었는데요.
로그인 페이지에서 아이디를 넣고 Enter키를 누르면 login.aspx 페이지의 로그인 버튼이 눌러지는것이 아니라. 마스터Top 에 있는 로그인 확인 버튼이 눌러집니다.
엔터키를 로그인페이지의 버튼에만 적용되게해야하는데 그게 안됩니다.
어떻게 해야하는지요.ㅜ.ㅜ
하루종일 매달려있는데 답이 안나옵니다.
해결 방안을 알려주시면 정말 감사하겠습니다.
======================================
아래 소스는 마스터 Top 부분 입니다.
=====================================
protected void Page_Load(object sender, EventArgs e)
{
// 로그인 부분 설정
// 쿠키가 있으면 로그아웃 이미지 출력
if (Request.Cookies["UserSettings"] != null)
{
btnTopLogin.ImageUrl = "~/Images/s_log_out.gif";
}
else
{
btnTopLogin.ImageUrl = "~/Images/s_log_in.gif";
}
}
protected void btnTopLogin_Click(object sender, ImageClickEventArgs e)
{
if (Request.Cookies["UserSettings"] != null) // 쿠키가 있으면 쿠키 삭제후 로그인 페이지로 이동
{
HttpCookie myCookie = new HttpCookie("UserSettings");
myCookie.Expires = DateTime.Now.AddDays(-1d);
Response.Cookies.Add(myCookie);
Response.Redirect("login.aspx");
}
else
{
Response.Redirect("login.aspx");
}
}
===========================================
아래 부분은 login.aspx 부분 입니다.
=======================================
protected void Page_Load(object sender, EventArgs e)
{
if (Request.Cookies["UserSettings"] != null) // 로그인 되어 있는 지 확인
{
string UserID,UserName;
if (Request.Cookies["UserSettings"]["UserID"] != null)
{
UserID = Request.Cookies["UserSettings"]["UserID"];
UserName = Request.Cookies["UserSettings"]["Username"];
Response.Write(UserID+UserName);
// 환영 메세지와 함께 메인페이지로 이동
Response.Redirect("../Default.aspx");
}
}
}
protected void btnLoginOK_Click(object sender, ImageClickEventArgs e)
{
if (Page.IsValid)
{
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
string sql = "select cmMem_sID, sName, sCompany, sJob, sMemGrade from cmn_member where cmMem_sID=@UserID and sPWD=@UserPWD";
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.AddWithValue("@UserID", txtUserID.Text);
cmd.Parameters.AddWithValue("@UserPWD", txtUserPWD.Text);
conn.Open();
SqlDataReader rd = cmd.ExecuteReader();
if (rd.Read())
{
// 쿠키 생성
HttpCookie myCookie = new HttpCookie("UserSettings");
myCookie["UserID"] = rd["cmMem_sID"].ToString();
myCookie["UserName"] = rd["sName"].ToString();
myCookie["UserCompany"] = rd["sCompany"].ToString();
myCookie["UserJob"] = rd["sJob"].ToString();
myCookie["UserGrade"] = rd["sMemGrade"].ToString();
myCookie.Expires = DateTime.Now.AddDays(1d);
Response.Cookies.Add(myCookie);
// Response.Write(rd["cmMem_sID"].ToString());
Response.Redirect("tempMain.aspx");
}
else
{
lblError_1.Text = "아이디혹은 페스워드오류";
lblError_2.Text = "입니다. 다시 확인해 주세요";
lblError_1.Visible = true;
lblError_2.Visible = true;
}
rd.Close();
conn.Close();
}
}
===============================================