본문 바로가기

Web Program

자바스크립트에서 쿼리스트링 값 추출 function getQuerystring(key, default_) {if (default_==null) default_=""; key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");var qs = regex.exec(window.location.href);if(qs == null)return default_;elsereturn qs[1];} 더보기
자동링크 정규식 function autolink($str) { /* url을 감지. http, https, ftp, mms를 감지합니다. */ $url = "/(http|https|ftp|mms):\/\/[0-9a-z-]+(\.[_0-9a-z-]+)+(:[0-9]{2,4})?\/?([\.~_0-9a-z-]+\/?)*(\S+\.[_0-9a-z]+)?(\?[_0-9a-z#%&=\-\+]+)*/i"; $aTag = "\\0"; /* 이메일 주소가 있으면 찾아냅니다. */ $email = "([_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+){1,})"; $aTagEmail = "\\0"; $str = preg_replace($url, $aTag, $str, -1); $str = pr.. 더보기
Minify 를 이용한 JavaScript, CSS 압축 전송 웹 서버의 페이지 크기가 크면 로딩 속도가 느리게 되는데 이때 PHP의 경우 압축전송 기술인 gzip 을 사용하게 됩니다. PHP로 gzip을 사용하여 문서를 압축 하면 대략 70 ~ 80% 까지 압축률을 보여 주며 보통 PHP 상단에 아래와 같이 적어 사용합니다. 하지만 자바스크립트와 CSS 파일은 PHP 파일이 아니라서 ob_start 를 사용할 수가 없습니다. 자바스크립트나 CSS 같은 파일을 압축 전송하도록 해주는 Minify 를 소개 합니다. Minify 는 PHP 5.2.1 이상 버전과 zlib 압축 라이브러리가 설치된 환경이어야 합니다. http://code.google.com/p/minify/ Minify 를 압축 풀어 나오는 min 폴더만 웹 문서가 있는 기본 디렉토리로 가져 갑니다. (.. 더보기
텍스트 에디터 Sublime Text 2 2주 전쯤부터 Sublime Text 2를 사용해 보고 있습니다. 다른 분들 반응이 좋아서 사용해 봤는데 무척 만족스럽습니다. 우선, 굉장히 심플하면서도 이쁩니다. 특히, zen-coding, vi key-mapping 등 Package 지원이 맘에 듭니다. 라이센스를 구입해야할지... ㅎㅎ 환경 셋팅 등 관련 사항들을 Windows XP 기준으로 정리해 봤습니다. 설치 ㅇ 다운로드 : Windows, OS X, Linux 모두 지원합니다. Windows의 경우 portable version도 제공합니다. ㅇ 라이센스 - 현재는 베타 버전으로 다운로드 및 사용은 무료이나 계속 사용할 경우는 라이센스를 구매해야한다고 합니다. - per-user 라이센스이므로 여러 OS 또는 여러 컴퓨터에서 사용이 가능합니.. 더보기
정규식 모음 // css 제거 정규식 var str = "한글 Hellow Blog //한글 제거 var RegExpHG = "[ㄱ-ㅎ가-힣]"; str = str.replace(RegExpHG,""); //result : Hellow Blog //주석 제거 var RegExpDS = //g; str6 = str.replace(RegExpDS,""); //result : 한글 Hellow Blog 더보기
Sencha Touch 2.1.0 개발환경 만들기 sencha touch 최신버젼 빌드환경을 구축하기위한 문서가 없어서(못찾은걸 수도 있지만 본인은 못찾음..)굉장한 삽질을 한 후에야 구축할수 있었다. 문제가 무엇인가하면 sencha sdk tool 이라는게 있는데 sencha touch 2.x 대부터는 단순히 *.js, *.css 만 프로젝트에 포함하면 끝나는게 아니라 자체적으로 프로젝트를 생성해주는 툴이 나와 이것을 이용하는게 더 편리하고 좋다. 헌데 저 sencha sdk tool이라는놈을 설치하면 자꾸 sdk 또는 어플리케이션 디렉토리 위치가 아니라 문제가 발생한다고 난리를 친다. 이거 해결할라고 몇일을 삽질을 해도 해결방법이 없다는 답변들만 줄줄이 나오는것이다. 멘붕이 올 지경이었는데 끈기를 가지고 검색 결과어떤 커뮤니티에서(stackoverf.. 더보기
[jquery] 체크박스, 라디오, select박스 컨트롤 1. JQuery checkbox 컨트롤 1) checkbox checked 여부id 인 경우 : $('input:checkbox [ id="ID" ]').is(":checked") == true;name인 경우 : $('input:checkbox [ name="NAMES"]').is(":checked") == true; 2) checkbox 전체 갯수 : $('input:checkbox [ name="NAMES"]').length3) checkbox 선택된 갯수 : $('input:checkbox [ name="NAMES"]:checked').length 4) checkbox 전체 순회 하며 checked 처리$('input:checkbox [ name="NAMES"]').each(function() .. 더보기
AJAX에서 euc-kr인 한글이 깨질때.. AJAX는 기본적으로 UTF-8 인코딩을 사용하기 때문에 인코딩이 euc-kr(KSC5601)인 페이지에서 ajax를 사용하게 되면 한글이 깨지게 된다. 이러한 현상을 해결하기 위해서는 통신 시 적절한 변환처리가 필요하다. 페이지에서 요청을 보낼 때 var val = encodeURIComponent("한글"); /* 값을 UTF-8 형식으로 인코딩 해 준다. "한글" 이라는 문자열은 0xED959C, 0xEAB880이므로 val에는 %ED%95%9C%EA%B8%80이라는 문자열이 들어간다. */ PHP에서 받을 때 $value = iconv("UTF-8", "CP949", rawurldecode($value)); /* http://www.php.net/manual/en/function.rawurldec.. 더보기
메타 태그의 사용방법 1. meta 태그의 정의 meta태그는 웹 서버와 웹 브라우저간에 상호 교환되는 정보를 정의 하는데 사용합니다. html 문서의 사이에 입력하는 특수 태그로서 사이트의 디자인에는 전혀 영향을 미치지 않고 문서가 어떤 내용을 담고 있고, 문서의 키워드는 무엇이며, 누가 만들었는지 등의 문서 자체의 특성을 담고 있습니다. 속성에는 name, content, http-equiv 3가지 속성이 있습니다. http-equiv=“항목명” : 웹 브라우저가 서버에 명령을 내리는 속성으로 name 속성을 대신하여 사용 될 수 있으며, html 문서가 응답 헤더와 함께 웹 서버로부터 웹 브라우저에 전송 되었을 때에만 의미를 갖습니다. content="정보값" : meta 정보의 내용을 지정합니다. name="정보이름".. 더보기
자바스크립트에서 PHP의 print_r과 비슷한 함수 var print_r = function(tar){ var str = ''; for (var p in tar) { var tmp = eval("tar['" + p.toString() + "']"); if (tmp != null && tmp.toString != null && tmp.toString() != ''){ if (str != '') str += ", "; str += p.toString() + " = " + tmp.toString(); } } return str; } alert(print_r(object)); 더보기