일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 자바스크립트
- 다음메일
- 청보리밭
- 네이버 지도API
- 자동 로봇 글등록
- 암호화&복호화
- 퀵메뉴
- 비밀번호 유효성
- XSS 차단
- Java
- WEB-INF 노출
- 스팸글 차단
- fckeditor
- 치환
- MARGIN
- 클라우드
- @tistory.com
- 중복필드
- PADDING
- 고창
- 2012 사진공모전
- html5
- apache tomcat 연동 보안
- 배경이 가려진 레이어 팝업
- CSS
- column명비교
- POST 전송
- 스크롤 이동
- 일괄처리
- addbatch
- Today
- Total
목록Server-side (26)
그곰의 생활
참조 : http://gyuha.tistory.com/309 위 블로그에서 알려주시는 쿼리를 적용하였다. /* 중복 레코드 조회 */ SELECT 테이블_index , 중복필드 , count(*) as cnt FROM 테이블 GROUP BY 중복필드 HAVING count(테이블_index)>1 /* 중복 레코드 삭제 */ DELETE FROM 테이블 WHERE 테이블_index not in ( SELECT 테이블_index FROM ( SELECT 테이블_index FROM 테이블 GROUP BY 중복필드 ) as b ) 하나의 테이블에 특정 레코드가 중복되어 있을 때 중복 레코드를 삭제하도록 하여야 한다. 테이블에 index로 primary key가 있으면 더욱 확실하게 삭제될 것이다. 테이블 : 테..
//start 화이트방식으로 주로 쓰이는 업로드 확장가가 아니면 강제 종료시키는겁니다. $pattern = "/^\.(jpg|jpeg|gif|png|doc|docx|txt|rtf|pdf|xls|xlsx|ppt|pptx|hwp){1}$/i"; if(!preg_match($pattern, $filename)) exit; // end
header("Content-type: image/jpeg"); header()가 입력된 라인 전에 빈공백 또는 문자가 출력되어 있는지 찾아본다. include와 require를 통해 포함되는 파일들 또한 모두 살펴봐야한다. 정말 X같게도 다중으로 require된 파일 중 하나가 빈공백을 포함하고 있어 증상을 잡지못하고 몇주를 고생했다..ㅠㅠ 서버환경, 파일 인코딩 등 엉뚱한 곳만 열심히 팠는데...허무하네..ㅠㅠ
/* * XSS 방지 */ public static String removeXSS(String str, boolean use_html) { String str_low = ""; if(use_html){ // HTML tag를 사용하게 할 경우 부분 허용 // HTML tag를 모두 제거 str = str.replaceAll("",">"); // 특수 문자 제거 str = str.replaceAll("\"",">"); str = str.replaceAll("&", "&"); str = str.replaceAll("%00", null); str = str.replaceAll("\"", """); str = str.replaceAll("\'", "'"); str = str.replaceAll("%", ..
출 처 : BamchiBlog http://blog.bamchi.com/?p=118 내부적으로 암호화를 사용 하기 위해서는 크게 두가지 방식의 함수가 존재한다. 대칭암호화 – EncryptByKey, DecryptByKey 비대칭암호화 – EncryptByAsmKey, DecryptByAsmKey 기본적으로 위에 함수들을 사용하여, 암호화 하는것도 여러가지가 있다. 단순히 암호를 가지고 할수도 있고, 인증서를 이용 할수도 있고… 자세한 것은 아래의 링크에서 확인하도록 하고 간단하게 대칭키 방식으로 사용 하는 예제를 확인해보자. http://msdn2.microsoft.com/ko-kr/library/ms173744.aspx -- 마스터키 만들기 -- http://msdn2.microsoft.com/ko-..
출처 : http://leepfe.tistory.com/entry/PHP%EB%A1%9C-HTTP-Request-%EB%AA%A8%EB%93%A0-%ED%97%A4%EB%8D%94-%EC%A0%95%EB%B3%B4-%EB%B3%B4%EA%B8%B0 php header 정보를 추출하는 PHP 구문 $headers = getallheaders(); while(list($header, $value) = each($headers)){ echo "$header: $value\n"; }
출처 : http://blog.daum.net/_blog/BlogTypeView.do?blogid=0IT6d&articleno=8479225&categoryId=0®dt=20100404172038#ajax_history_home 썸네일 이미지를 만드는 과정. 엄밀히 말하자면 이미지를 축소시켜서 캐시에 저장하는 과정은 아래와 같다. 1. 원본이미지를 불러온다. 2. 새 이미지틀을 만든다. (포토샵에서 캔버스를 새로 여는 과정으로 생각 하면 됨) 3. 이미지틀에 원본이미지를 축소하여 붙여 넣는다. 4. 저장한다. 그럼 코드를 보자. 가로 500px, 세로 300px 크기인 'original.gif' 이미지를 가로 200px, 세로 100px 로 줄여서 'resized.gif'로 저장을 해보겠다. // ..
Function 파일을 생성하여 include하시면 된다. function IMG_EXIF($img) { $exif = read_exif_data($img); while(list($k, $v) = each($exif)) { if($k == "FileSize") { // 이미지 용량 $info['FileSize'] = $v; } else if ($k == "ImageDescription") { $info['ImageDescription'] = $v; } else if ($k == "Model") { //카메라모델 $info['Model'] = $v; } else if ($k == "DateTime") { //찍은시간 $info['DateTime'] = $v; } else if ($k == "Flash") ..
중복해서 선언 할 가능성이 있는 함수나 클래스들은 선언하기 전에 먼저 선언되었는지 확인하는 함수 function_exists(함수명) //함수가 선언되어있으면, TRUE를 반환하고, 그렇지 않으면 FALSE를 반환한다. //함수 안에서 선언된 함수는 그 함수내에서만 적용이 된다. ex) if(!function_exists("test"){ function test(){ } } class_exists(클래스명) //클래스가 선언되어있으면, TRUE를 반환하고, 그렇지 않으면 FALSE를 반환한다. ex) if(!class_exists("test"){ class test{ } } 함수를 include시 에는 include_once()를 사용(PHP 4.0.1 pl2에서 추가됨)하시면 한번만 include되어 ..
서버 변수: $_SERVER 참고: 4.1.0부터 지원됨. 이전 버전은 $HTTP_SERVER_VARS을 사용함 $_SERVER는 헤더, 경로, 스크립트 위치와 같은 정보를 포함하는 배열이다. 이 배열 안의 엔트리는 웹서버에 의해 생성된다. 모든 웹서버가 이런 것들을 제공한다는 보장은 없다. 서버는 어떤것은 빠뜨리거나 여기에서 목록화된 것 외의 것을 제공할수 도 있다. 이런 많은 수의 변수들은 CGI 1.1 specification에 기반하므로, 그런 변수들은 기대할수 있을것이다. 이 변수는 '슈퍼전역', 또는 자동 전역, 변수이다. 즉 스크립트내의 모든 유효영역안에서 사용가능하다는 의미를 갖는다. $HTTP_SERVER_VARS를 사용할때와 같이 함수나 메소드 안에서 사용하기 위해 global $_SE..