Chrome Cookie Edit


어제 강의로 쿠키를 수정하는 방법도 강의 해야 겠다는 생각이 들어
이틀 연속 쿠키 강의를 진행합니다.

쿠키는 어제 말씀 드렸다시피 공개 정보이고 변조가 가능합니다. 
그 중에 오늘은 크롬에서 확장프로그램을 통해

쿠키를 수정하는 방법을 알아보겠습니다.



▼우선 크롬을 여시고 아래 URL을 접속하세요
그리고 chrome에 추가를 하면 설치가 됩니다.



▼이제 크롬에서 보시면 쿠키 모양의 산타 모자를 쓴 아이콘이 보입니다.
귀엽네요. 항상 느끼는건 좋은 프로그램은 유머와 센스가 있는게 특징입니다.




http://gocoder.tistory.com/ 제 블로그에서 해당 버튼을 눌러본 결과 입니다.
제가 구운 gocoder_info가 있네요 해당 값을 클릭 해 데이터를 수정하고 
완료 버튼인 v 체크 버튼을 누르면 적용 됩니다. 해당 값을 1로 바꾸면 제 블로그의 애니메이션인
화살표가 보이겠네요



▼ 휴지 모양을 누르면 해당 웹사이트의 쿠키가 모두 삭제 됩니다. 



▼ 삭제 후 모습은 정직하네요 쿠키가 없습니다.







마무리


쿠키 이론은 
-> http://gocoder.tistory.com/104 
을 참고해주세요




댓글을 달아 주세요



cookie란?


웹개발에서 쿠키는 정말 꼭! 필요한 존재입니다.
쓸수 있는 방법이 너무 많아 설명을 다 할 수 없을 정도이죠

HTTP 쿠키 : 웹사이트를 방문한 사용자 컴퓨터의 기록 정보 파일을 말하는 것 

쿠키 사용의 예로 
제 블로그에서 사용한 사례를 설명해보려고 합니다.



모바일로 들어왔을때 아래와 같은 애니메이션이 보이도록 스킨을 수정했습니다.


최초 진입시 "gocoder_info" 라는 쿠키를 사용자의 PC에 구웠습니다.



첫번째 들어왔을떄는 메뉴까지 보이는 액션을
두번,세번은 화살표만 보이는 액션을 보이게 했고 

▼ gocoder_info 라는 쿠키 값이 3이 들어가 있으면 하루 동안 애니메이션이 보이지 않습니다.



이것들 모두 쿠키가 있어 가능합니다. 
(쿠키가 없으면 이 작은 것도 DB로 해야 했겠네요)

이 밖에도 자동 로그인이나 카테고리 유지나 해당 사용자에게만
특별하게 제공하고 싶은 기능들은 거의 대부분 쿠키를 사용합니다.

하지만 쿠키는 공개 값이기 때문에 보안의 취약합니다.



그래서 중요한 정보는 서버의 저장할수 있는 "session"을 사용하게 됩니다.
이러면 또 서버의 과부하가 일어날 수 있으니 잘 조절하여 쓸수 있습니다




마무리



쿠키와 세션의 차이를 곰곰히 생각해보세요. 신입 면접때 자주 묻는 질문입니다.

메리크리스마스~!




댓글을 달아 주세요




테이블 데이터 정렬


화면에 보이는 데이터를 정렬 하고 싶을때가 있습니다.
(혹은 그런 기획이 오면 해야죠)

▼엑셀에 사용하는 그 기능 처럼요




하지만 웹에서는 DB에 order by 명령어를 받아
새로고침 하여 뿌리는 경우가 많아  느리기도 하고
굳이 서버를 다녀와야 할까 싶죠

그럴때 사용할수 있는 플로그인을 하나 소개 하겠습니다.

▼해당 사이트에 tabersorter 라는 플로그인
http://tablesorter.com/

오늘은 해당 사이트에 나와 있는 내용을 익스프레스하게 압축하여 설명해보겠습니다.
Jquery로 테이블에 있는 데이터를 거침없이 정렬 해봅시다.

▼jQuery와 tablesorter를 참조한다.
  <script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
  <script type="text/javascript" src="jquery.tablesorter.min.js"></script>


▼적용 하고 싶은 Table 속성에 .tablesorter() 추가한다.
   $(document).ready(function(){
      $("#gcTable").tablesorter();
   });

▼테이블에 속성은 아래와 같습니다. 
<table >
   <thead>
   <tr>
      <th></th>
   </tr>
   </thead>
   <tbody>
    <tr>
        <td></td>
    </tr>
   </tbody>
</table>
       

▼그리고 아래가 소스의 합

<head>
   <script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
   <script type="text/javascript" src="jquery.tablesorter.min.js"></script>
   <link rel="stylesheet" href="blue_style.css" type="text/css">
   <link rel="stylesheet" href="green_style.css" type="text/css">

</head>
<script type="text/javascript">
<!--
   $(document).ready(function(){ 
      $("#gcTable").tablesorter();
   });
//-->
</script>

<table id="gcTable" class="tablesorter">
   <thead>
   <tr>
      <th>이름</th>
      <th>나이</th>
   </tr>
   </thead>
   <tbody>
    <tr>
        <td>홍길동</td>
        <td>21</td>
    </tr>
    <tr>
        <td>사임당</td>
        <td>40</td>
    </tr>
    <tr>
        <td>이이</td>
        <td>90</td>
    </tr>
    <tr>
        <td>이도</td>
        <td>50</td>
    </tr>
    <tr>
        <td>이황</td>
        <td>80</td>
    </tr>
    <tr>
        <td>이순신</td>
        <td>54</td>
    </tr>
    <tr>
        <td>고코더</td>
        <td>88</td>
    </tr>
    <tr>
        <td>개발자</td>
        <td>9</td>
    </tr>
   </tbody>
</table>



▼압축파을일 열어 Gc.html을 열어보세요


▼압축파을일 열어 Gc.html을 열어보세요
아래와 같이 이용 가능합니다.




마무리

플로그인의 의존한다고 생각하지마세요. 
스스로 플로그인을 잘써야 만들수도 있습니다.




댓글을 달아 주세요



 PHPstrom , Webstorm portable install


PHP스톰 쓰면서 이클립스에 비해  가장 아쉬운건 포터블 형태가 아닌것이다.
A, B라는 프로젝트를 동시에 진행 한다면 이클립스의 경우
A프로젝트의 셋팅 해놓은 이클립스와
B프로젝트의 셋팅 해놓은 이클립스를 다른 파일로 실행함으로써
작업 내역을 계속 이어 나갈 수 있다는 특징이 있다.

그런데 jetBrain IDE들은 알다시피 설치버전이라 editplus 처럼 하나만 설치가 가능하다.
PHP 프로젝트를 두개를 맡고 있다면 매번 폴더를 오픈해야 한다. 불편하다.



그래서 오늘은 PHPstrom , Webstorm 이 IDE를 포터블로 만드는 방법을 알아보자.

우선 먼저 써놓은 PHP스톰 강의를 보고 와도 좋을 것이다.http://gocoder.tistory.com/45

우선 최신버전 Storm을 받자 PHPstrom , Webstorm두개다 포터블로 만드는 방법은 같으니 
PHP스톰으로 예시를 들어보겠다.

▼우선 아래 URL에 가서 최신버전을 다운로드 하자



▼그 다음 받은 EXE 파일을 마우스 오른쪽을 눌러 반디집으로 열기로 눌러보자 
이전 강의에서도 말씀드렸다시피 개발자면 반디집을 쓰는 걸 추천!



▼그럼 마치 압축파일 처럼 보일것이다. 해당 이미지에 화살친 부분을 잡고 원하는 폴더로 드래그 드롭 하면 압축이 풀린다.


▼그다음 Bin 폴더에 접근해서 idea.properties 파일을 메모장이나 editPlus로 열어보자




▼해당 네모친곳을 이렇게 바꿔보자 ${user.home} -> ${idea.home}
설정 내용들을 OS 사용자 계정에 등록하는게 아니라 각 폴더에 등록하겠다는 말이다.



▼그리고 앞에 있는 주석을 제거 해보자 최종 모습은 아래와 같다.



▼그리고 다시 bin폴더에서 phpstorm64.exe 를 클릭하여 프로그램을 실행해보자.



▼설정부터 묻는 화면이 나온다 마치 처음 설치 했던 거처럼!!!!





이렇게 하면 이제 포터블한 IDE이기 때문에 프로젝트마다 하나의 스톰을 사용할 수 있다.
그리고 프로그램을 여러개를 실행할 수도 있다.
마치 이클립스 처럼 사용할 수 있다는 말이다.

참고로 추가 팁!!
해당 포터블 버전으로 사용하면 
인증 없이 무료 사용 30일마다 새로 압축을 풀어 오늘 배운 설정을 셋팅 하면
포터블로 계속 쓸수 있다.~~



마무리

jetBrains 가 IDE를 통합 할 것으로 생각 듭니다. 닷넷 IDE까지 나온거 보니 거침 없는 행보로 보입니다.


댓글을 달아 주세요



이클립스에서 스프링 부트 import 시키기


스프링 부트를 유지보수를 위해 import 시켜야할 때가 있습니다.
오늘은 스프링부트 프로젝트를 이클립스로 가져와서 실행시켜 보려고 합니다.
말은 거창하지만 매우 쉬운 작업입니다.

▼ STS를 설치후 import로 진입 그다음 - maven->exsting Maven Projects 를 선택을 합시다.




▼ 자신의 스프링 부트 프로젝트 폴더를 선택을 하고 


▼ 부트 대시보드를 확인해보면
스프링 부트 답게 모든 서버 설정이 그대로 이식되어 있습니다.
해당 보드에서 스타트만 눌러주면 됩니다.
.

▼ 그럼 이처럼 서버가 시작되었다. 

▼ 해당 서버에 저장된 포트대로 접속해보고  
정상적으로 스프링 부트가 실행되는걸 확인 함으로써 임포트 작업이 완료가 되겠네요





마무리

서버 설정이 축소되서 편하긴 한데..
스프링 부트 부터 익숙해지면  안될거 같네요~


댓글을 달아 주세요



.DB 데이터 수정 할 수 있는 포터블 프로그램


sqllite 즉 파일 DB 를 수정할 필요가 있을때가 있다. 
다양한 방법이 있지만 그중에 
SQLiteman을 이용해서 수정하는 방법을 안내하려고 한다.

해당 링크를 따라가보자 

▼해당 화면에서 보이는 다운로드 버튼을 클릭하자



▼다운로드 했다면 그냥 단순하게 압축을 풀어보자 아래와 같이 파일들이 나오는데
여기서 아이콘이 있는 .exe를 클릭하면 된다.



▼클릭하면 해당 처럼 UI가 보이고 file->open을 눌러 .db를 선택해서 오픈해보자. 


▼클릭하면 해당 처럼 UI가 보이고 file->open을 눌러 .db를 선택해서 오픈해보자.
이제 해당 화면에서 SQL문을 날려서 사용하면 된다.
편의 기능은 거의 없다 시피 하니 포터블한 파일로 저장해놓고 가끔식 필요할때마다 사용하면 될거 같다!





마무리

저는 한번뿐이 파일DB를 안써봤지만 때에 따라 사용 가능하게 되니
한번 써보고 경험만 익혀두면 좋을거 같습니다.




'IT_Developers > SQLite' 카테고리의 다른 글

프로그램 - .db 수정을 위한 SQLiteman 설치하기  (0) 2017.11.28

댓글을 달아 주세요



ASP 속도 체크하기


ASP에서 성능 테스트 할 수 있는 가장 기본적인 방법을 소개합니다.
바로 Timer() 를 이용해서 페이지 처음과 끝에 코드를 심고 얼마나
걸렸는지 하는 아주 원시적이지만 가장 기본적이고 효과적인 방법입니다.

▼아래 코드를 IIS에서 돌려 실행해봅시다.
1
2
3
4
5
6
7
8
9
10
11
12
<%
   dim strSql
    dbCon.Open Application("DBInfo")
    dbCon.BeginTrans     //트랜젝션 시작
    dbCon.Execute(strSql)
    if dbCon.Errors.Count = 0 then
        dbCon.CommitTrans          //오류없을 시엔 커밋
    else
        dbCon.RollbackTrans          // 오류일땐 롤백
    end if
    dbCon.Close
%>
cs



방법은 위에 말했듯이 Timer()를 시작에 재고
중간에 for문으로 3천만번 정도 포문을 돌렸다
그리고 마지막은 역시 현재 시간 체크 

▼ 대략 내 오래된 노트북에서는 1천만번이 1.3초 정도 걸린다. (구려)




마무리



이런식으로 뿐이 퍼포먼스 체크는 멋이 없다고요? 그게 ASP 매력입니다. 원시적이면서 기본에 충실한 언어입니다. 


댓글을 달아 주세요



MSSQL 0을 Null로 반환하여 isnull로 처리하기


MSSQL 에서 0으로 나눌시에는 오류가 발생한다. 0으로 숫자를 나눈건 로직이 잘못됐거나 모델링 잘못된 것이다.
하지만 .. 사람 맘 같이 세상이 움직이겠는가..
결국은 숫자가 꼬이고 꼬이면 0으로 나누고 결국 오류가 발생할것이다.
오늘은 그래서 MSSQL에서 0으로 나누기 오류를 대비하는 법을 배워보겠다.

우선 아래처럼 쿼리를 MSSQL매니저먼트에서 실행해보자
 SELECT 1000 / 0   



▼ 당연히 오류가 발생하였다. 수학에선 0으로 숫자를 나눌수 없다. 



이번엔 이 쿼리를 실행해보자
SET ANSI_WARNINGS OFF
SET ARITHIGNORE ON
SET ARITHABORT OFF
select 100 / 0

▼ 아래처럼 NULL 이 반환 됐다. (오류만 발생안했을 뿐이지 결국 오류이지만)



해당 옵션과 함께 isnull을 사용하면
SET ANSI_WARNINGS OFF
SET ARITHIGNORE ON
SET ARITHABORT OFF
select ISNULL(100 / 0,0)

▼ 가장 올바른 값이 표출 되었다. 
오류를 피해갈 수 있었다가 맞겠네요






+고코더의 추천강의


프로시저에서 오류를 캐치하기 RAISERROR 예제를 배워보세요

-> http://gocoder.tistory.com/34?category=701232



마무리


0으로 숫자를 나누지 않게 프로시져를 개발 하는게 정답입니다.


댓글을 달아 주세요



SCP에 GUI를 입혀보자 - winSCP 설치


리눅스에 대표적인 명령어중에 CP, SCP 명령어가 있습니다.

CP  : 서버내에 파일을 다른 디렉토리로 복사하는 명령어
SCP : 다른 서버끼리 파일을 전송하는 명령어



콘설창으로 접속하여서 커맨드로 파일을 복사하는 방식은 꽤 친숙하고 의외로 신속합니다.
하지만 검은창에 텍스트만 치다보면 작업의 정확도와 효율은 떨어지기 마련입니다.
내가 지금 어느폴더에 있는지 계단 형식으로 보고 싶기도 하고... 오타의 문제도 생기는게 참 불편합니다.

익스프레스 하게 CP와 SCP 명령어를 입력할수 있는 프로그램을 소개합니다.

winSCP 를 다운받기위해 아래 URL로 이동합시다.


▼화면에 Download WinSCP를 클릭하면 포커스가 최신버전를 다운할수 있는 곳으로 화면이 이동된다.

▼ 다운로드 받았으면 한번 설치해보자.
▼ 당연히 수락 버튼을 클릭

▼ 개발사에 기본 권장 사항을 믿고 다음



▼여기서 두가지 버전이 있습니다.
커맨더 : 하나의 창에 양쪽에 탐색기가 있게 표시 보기 쉽다.
탐색기  :  원도우 탐색기처럼 하나의 창만 표시

▼저는 커맨더 방식으로 선택했습니다.

▼ 설치를 진행합니다.

▼ 설치가 완료되면 똑똑하게도 Putty나 파일질라등등 프로그램이 기본설정된 정보를 가져올지 묻습니다.
가져오는게 이득일듯 합니다.

▼ 예를 누르면 해당 화면이 나오고 정보와 가져올 대상들을 선택할 수 있습니다.
putty와 파일질라에서 원하는 정보를 가져와봅시다.

▼ 완료하여 설치를 마무리를 했습니다.
페이팔 화면이 나온 이유는 구매가 아니라 기부 의사이므로 완료를 눌러
설치를 종료 하였습니다.













댓글을 달아 주세요



IIS ActiveX 오류


사이트 갤럭시나 ABC업로드 등 32비트 프로그램을 64비트 OS에 설치 후 동작 시키면     
      ActiveX 구성 요소는 개체를 작성할 수 없습니다.     



해당 오류가 발생한다.
말그대로 32비트라 오류가 발생한것이다.
방법은 간단한다.

▼우선 응용프그램 풀에서 사용하는 사이트에 고급설정을 클릭 한다.


그리고 아래와 같이 32비트 사용을 true로 만들면 된다.





마무리

이 오류를 확인하고 있는 개발자님
32비트 컴포넌트를 64비트에 설치했다는건 조금 뒤쳐진 방법이 아닌지 생각해보자











댓글을 달아 주세요