제목 : 31.8.1. 회원 가입 : (관리자 전용) 회원 정보 변경 : UserView.ascx.cs
    
    
        
            
                | 글번호: |  | 205 | 
            
                | 작성자: |  | 레드플러스 | 
            
                | 작성일: |  | 2007/07/02 오후 6:14:00 | 
            
            
                | 조회수: |  | 5931 | 
            
        
     
 
    
	
	
    
	using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;//
public partial class UserViewControl : System.Web.UI.UserControl
{
  protected void Page_Load(object sender, EventArgs e)
  {
        // 최고관리자만 회원 정보 관리
        if (Page.User.Identity.Name.ToLower() != "administrator")
        {
            Response.Redirect("~/Login.aspx");    
        }
        // UserManager.aspx에서 UID값으로 쿼리스트링이 넘어오면...
        if (Request["UID"] != null)
        {
            if (!Page.IsPostBack) // 처음 로드할 때에만 사용자 정보 표시
            {
                DisplayData();        
            }    
        }
  }
    private void DisplayData()
    {
        SqlConnection objCon = new SqlConnection(ConfigurationManager.ConnectionStrings[
                "ConnectionString"].ConnectionString);
        objCon.Open();
        SqlCommand objCmd = new SqlCommand(
            "Select * From Users Where UID = @UID", objCon);
        objCmd.Parameters.AddWithValue("@UID", Request["UID"]);
        SqlDataReader objDr = objCmd.ExecuteReader();
        while (objDr.Read()) {
            txtDomainID.Text = objDr["DomainID"].ToString();
            txtName.Text = objDr["Name"].ToString();
            txtEmail.Text = objDr["Email"].ToString();
            txtDescription.Text = objDr["Description"].ToString();
            if (Convert.ToInt32(objDr["Blocked"]) == 0) {
                this.optBlocked.Items[0].Selected = true;//사용 가능 체크    
            }
            else {
                this.optBlocked.Items[1].Selected = true;//잠금 체크
            }
        }
        objDr.Close();
        objCon.Close();
    }
    protected void btnModifyProfile_Click(object sender, EventArgs e)
    {
        //[1] 커넥션
        SqlConnection objCon = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
        objCon.Open();
        //[2] 커멘드
        SqlCommand objCmd = new SqlCommand();
        objCmd.Connection = objCon;
        objCmd.CommandText = "UpdateUserAdmin";
        objCmd.CommandType = CommandType.StoredProcedure;
        //[3] 파라미터추가
        objCmd.Parameters.AddWithValue("@DomainID", txtDomainID.Text);
        objCmd.Parameters.AddWithValue("@Name", txtName.Text);
        objCmd.Parameters.AddWithValue("@Password", txtNewPassword.Text);
        objCmd.Parameters.AddWithValue("@Email", txtEmail.Text);
        objCmd.Parameters.AddWithValue("@Description", txtDescription.Text);
        objCmd.Parameters.AddWithValue("@Blocked", optBlocked.SelectedValue);
        objCmd.Parameters.AddWithValue("@UID", Request["UID"]);
        //[4] 실행
        objCmd.ExecuteNonQuery();
        //[5] 마무리
        objCon.Close();
        Response.Redirect("UserView.aspx?UID=" + Request["UID"]);
    }
    protected void btnDeleteUser_Click(object sender, EventArgs e)
    {
        //아이디 받기
        string strDomainID = txtDomainID.Text.ToLower();
        if (strDomainID == "administrator" ||
            strDomainID == "guest" || strDomainID == "anonymous")
        {
            string strJs = @"
<script>
alert('해당사용자는 관리 목적의 사용자로 삭제할 수 없습니다.');
</script>        
            ";
            // 자바스크립트 실행 : 경고창 띄우기
            Page.ClientScript.RegisterStartupScript(
                this.GetType(), "gogo", strJs
            );
        }
        else
        {
            DeleteProcess(); // 삭제 진행
        }
    }
    private void DeleteProcess()
    {
        //[1] 커넥션
        SqlConnection objCon = new SqlConnection();
        objCon.ConnectionString =
            ConfigurationManager.ConnectionStrings[
                "ConnectionString"].ConnectionString;
        objCon.Open();
        //[2] 커멘드
        SqlCommand objCmd = new SqlCommand();
        objCmd.Connection = objCon;
        objCmd.CommandText = "DeleteUser";
        objCmd.CommandType = CommandType.StoredProcedure;
        //[3] 파라미터추가
        objCmd.Parameters.AddWithValue(
            "@DomainID", txtDomainID.Text);
        //[4] 실행
        objCmd.ExecuteNonQuery();
        //[5] 마무리
        objCon.Close();
        Response.Redirect("UserList.aspx");
    }
}
    
	
    
    
 
    
    
    
    
    
    
    
    
    
    
    
     
    
        