'컴퓨터교양 > 프로그램 활용' 카테고리의 다른 글
이클립스 UTF8 한글 깨짐 현상 (0) | 2013.12.20 |
---|---|
형상관리란 무엇인가? 소프트웨어형상관리(SCM)란 무엇인가 (0) | 2013.12.19 |
Ghost USB 부팅 고스트 만들기 (0) | 2013.10.15 |
Windows 8 시작버튼 생성 프로그램 (0) | 2013.10.11 |
티스토리 블로그 에디터 (0) | 2013.10.09 |
여러 블로그 에디터중 Windows Live Writer(윈도우 라이브 라이터)를 설치하도록 하겠습니다.
윈도우 라이브 에센셜 홈으로 접속합니다.
http://windows.microsoft.com/ko-kr/windows-live/essentials
[지금 다운로드]를 눌러 설치를 시작합니다.
전부 설치해도 되지만 전 걍 필요한 것만 설치 할랍니다.
설치가 완료되면, "시작 > Windows Live > Windows Live Writer" 를 실행합니다.
동의 하랍니다.
티스토리를 사용할 것이기 때문에 기타 서비스를 선택 합니다.
자신의 계정 정보를 입력합니다.
사용자 이름은 이메일을 정확히 입력하세요. xxx@naver.com 까지 말이에요.
풀어 말하면 에디터에 현재 사용중인 스킨을 반영할 꺼냐는 질문 입니다.
예를 누르면 티스토리에서 사용중인 스킨이 그대로 에디터에 입혀집니다.
Windows Live Writer에서 관리하는 블로그 닉네임 입니다.
이걸 수정한다고 해서 실제 블로그 닉네임에 영향을 미치지는 않습니다.
모든 설정이 완료되면 이런 모양새로 에디터가 뜹니다.
스킨이 반영된 상태이군요.
제목과 내용을 입력하고, 내용에 사진도 하나 넣어보고,
아참, 카테고리도 설정해 보고,
상단 리본메뉴에 있는 [게시] 버튼을 누르면,
저렇게 알아서 게시를 해 줍니다.
티스토리 관리자 글목록으로 들어와서 공개 설정이 어떤가를 살펴봤습니다.
공개에 온
보호에 오프
발행에 오프
이렇게 설정되어 있습니다.
Windows Live Writer에 공개 설정 옵션이 있는지 찾아봐야겠습니다. 있으면 좋을 텐데...
만약 없어도 문제는 되지 않습니다.
[블로그에 임시저장]이라는 버튼 보이시죠?
저걸로 저장하면 아래와 같이 공개에 오프 된체로 저장 됩니다.
저장되는데 글로 저장됩니다.
Windows Live Writer에서 임시저장이란, 글로 올리되 공개에 오프 하겠다는 뜻입니다.
티스토리 사이트 에디터에서 임시저장 하는 것과는 의미가 다릅니다.
참고로 이런 프로그램의 컨셉(?)은
서식에 맞추어 블로그를 작성 할 수 있도록 서식을 준비해주고,
내용을 작성 할 수 있도록 HTML 에디터를 지원해주고,
계정 연동을 통해 블로그를 게시할 수 있도록 하는 것 입니다.
'컴퓨터교양 > 프로그램 활용' 카테고리의 다른 글
이클립스 UTF8 한글 깨짐 현상 (0) | 2013.12.20 |
---|---|
형상관리란 무엇인가? 소프트웨어형상관리(SCM)란 무엇인가 (0) | 2013.12.19 |
Ghost USB 부팅 고스트 만들기 (0) | 2013.10.15 |
Windows 8 시작버튼 생성 프로그램 (0) | 2013.10.11 |
Windows Live Writer로 작성한 글 입니다. (0) | 2013.10.09 |
개요
HTML 태그에 설정하는 값과 DB에 저장하는 값이 일치 하지 않을 때는
짝을 이루는 함수를 만들어 사용하면 수월 합니다.
내용
보통 input type="text" 이 넘은 DB text 타입 컬럼에 그대로 저장 해주면 됩니다.
그런데 <input type="checkbox" name="isSMS" checked /> 이건 어떻습니까?
체크박스의 값을 저장하기 위해 DB에 어떤 컬럼을 만드시나요?
보통은 bit 또는 char(1) 로 만드실 껍니다. 어떤 DB는 true, false도 되었던거 같은데....
여튼 여기서는 bit 또는 char(1) 타입의 컬럼에 저장한다고 칩시다.
HTML을 SUBMIT() 하여 저 체크박스의 값을 뽑아 보면,
isSMS = Request.Form("isSMS") 으로 뽑겠죠?
checked 일때는 "on" 이라고 설정 됩니다.
그럼 "on" 을 그대로 DB에 저장 할 수 없으니,
"on" 일 때는 "1"로 바꿔주고, 아닐 때는 "0"으로 바꿔준 다음 DB에 저장하면 됩니다.
여기까지는 저장하는 방법이구요, 이제는 불러올때를 살펴봅시다.
DB에 "1" 또는 "0" 이라고 저장했으니, select 하여,
isSMS= rs("isSMS") 이렇게 뽑아 보면,
"1" 또는 "0"이라고 나올 껍니다.
그럼 "1"을 태그에 그대로 먹일 순 없으니,
"1"은 "checked"로 바꿔주고, "0"이면 ""(빈칸)으로 바꿔주고 나서 먹이면 됩니다.
이 내용을 실제 코딩으로 하면, 매번 If .. Else .. End If 문장을 수도 없이 써야 합니다.
이런 경험한적 있으실 껍니다. 아마 수백 수천번씩은 경험하는 내용이 아닌가 싶습니다.
짝 함수
전 아래와 같이 짝을 이루는 함수를 만들어 사용합니다.
'tagValue를 DB에 저장 가능한 형태로 변환한다.
'tagValue는 사실 Request.Form("isSMS") 으로 뽑은 값이다.
Function toDBValue_checkbox(tagValue)
If tagValue = "on" then
toDBValue_checkbox = "1"
Else
toDBValue_checkbox = "0"
End If
End Function
'dbValue를 태그에 적용 가능한 형태로 변환한다.
Function toTagValue_checkbox(dbValue)
If dbValue = "1" Then
toTagValue_checkbox = "checked"
Else
toTagValue_checkbox = ""
End If
End Function
사용법
Tag에서 값을 받아, DB에 저장하려 할 때
isSMS= Request.Form("isSMS")
isSMS= toDBValue_checkbox(isSMS) '"1" 또는 "0"
DB에서 불러와, Tag에 값을 적용할 때
isSMS= rs("isSMS")
isSMS= toTagValue_checkbox(isSMS) '"checked" 또는 ""(빈칸)
<input type="checkbox" name="isSMS" <%=isSMS%>>
참고
3항 연산자가 지원되는 언어에서는 쌍 함수 만드는 것 보다
3항 연산자를 사용하는 것이 더욱 유리할 지도 모릅니다.
코딩 속도 때문인데요. ASP.NET의 경우 tag를 DB에 저장할 때,
isSms.Checked ? "1" : "0"
이래 주면 되거든요. 구지 함수를 만들 필요가 없지요.
꺼낼 때에는 바인딩 개념을 쓰니깐 Checked='<%# (bool)Eval("isSms") %>' 이딴 식으로 하지요.
'ASP > ASP My Library' 카테고리의 다른 글
ASP용 String.Format() 함수, eregi_replace() 함수, SQL 인젝션 방지 함수 (0) | 2013.10.01 |
---|