using System;
using System.IO;
public partial class Upload_Modify : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (String.IsNullOrEmpty(Request["Num"]))
{
Response.Write("잘못된 요청입니다.");
Response.End();
}
else
{
if (!Page.IsPostBack) //***** 처음 로드할 때만 예전 데이터 읽어오기
{
DisplayData();
}
}
}
private void DisplayData()
{
UploadEntity ue = new UploadEntity();
UploadBiz ub = new UploadBiz();
ue = ub.ViewUpload(Convert.ToInt32(Request["Num"]));
// 각각의 컨트롤에 바인딩
txtName.Text = ue.Name;
txtEmail.Text = ue.Email;
txtTitle.Text = ue.Title;
txtHomepage.Text = ue.Homepage;
txtContent.Text = ue.Content;
// 수정 페이지에서 추가
hidFileName.Value = ue.FileName;
hidFileSize.Value = ue.FileSize.ToString();
// 예전 인코딩에 따른 라디오버튼 리스트 선택
if (ue.Encoding.ToLower() == "html")
{
lstEncoding.SelectedIndex = 1;
}
else if (ue.Encoding.ToLower() == "mixed")
{
lstEncoding.SelectedIndex = 2;
}
else
{
lstEncoding.SelectedIndex = 0; // 기본값
}
}
protected void btnModify_Click(object sender, EventArgs e)
{
// 파일 업로드
string strDirectory = Server.MapPath(".") + "\\files\\"; //
string strFileName = String.Empty;
int intFileSize = 0;
if (!String.IsNullOrEmpty(ctlFileName.FileName))
{ // 첨부된 파일이 있다면,
// 파일명 추출
strFileName =
// 파일명 중복처리 필요
UploadUtil.GetFilePath(strDirectory, ctlFileName.FileName);
// (경로 + 파일명)으로 저장 실행
ctlFileName.PostedFile.SaveAs
(Path.Combine(strDirectory, strFileName));
intFileSize = ctlFileName.PostedFile.ContentLength; // 파일사이즈
}
else
{
strFileName = hidFileName.Value;
intFileSize = Convert.ToInt32(hidFileSize.Value);
}
// DB 저장
UploadBiz ub = new UploadBiz();
UploadEntity ue = new UploadEntity();
ue.Num = Convert.ToInt32(Request["Num"]);
ue.Name = txtName.Text;
ue.Email = txtEmail.Text;
ue.Title = txtTitle.Text;
//ue.PostIP = Request.UserHostAddress;
ue.Content = txtContent.Text;
ue.Password = txtPassword.Text;
ue.Encoding = lstEncoding.SelectedValue;
ue.Homepage = txtHomepage.Text;
ue.FileName = strFileName; // 변경...
ue.FileSize = intFileSize; // 변경...
ue.ModifyDate = DateTime.Now;
ue.ModifyIP = Request.UserHostAddress;
int result = ub.ModifyUpload(ue);
if (result == -1)
{
lblError.Text = "암호가 틀립니다.";
}
else
{
// 상세보기로 이동
Response.Redirect("View.aspx?Num=" + Request["Num"]);
}
}
} |