기타/WWW 65

PHP XML Parser expat을 사용하여 XML을 mySQL에 저장하기

현재... GPX 파일(XML 파일의 일종입니다.)을 해석해서 mySQL DB에 넣기 위해 고민 중에 있었습니다. 제가 예전에 만들어 둔 프로그램에서는 그냥 javascript - ajax로 읽어 들인 후 사용했었습니다. 원래는 이 부분을 사용하려고 했습니다. 그런데, 이 기능을 이용할 경우, 한 개의 waypoint를 추출해서 배열을 만들고, ajax를 통해 PHP로 넘겨주면, PHP속에서 mySQL에 INSERT 시키는 방법을 사용해야 합니다. 그러면 당연히 터무니 없이 속도가 떨어질 것으로 예상됩니다. 그러던 중, W3C PHP 투토리얼 사이트에서 XML Parser에 관한 내용을 보게 되었습니다. 이걸 이용하면 그냥 PHP에서 XML(GPX파일)을 Parsing 한 후, 바로 MySQL로 넣어줄 ..

기타/WWW 2016.05.05

NetBeans 디버깅환경 설정

요즘 다시 PHP 연습중입니다. 하나 만들고 싶은 게 있어서요. 예전에는 그냥 일반 텍스트에디터를 사용해서 연습을 했었습니다. 그런데 이번에 easyPHP를 설치하다보니, 디버거를 사용할 수 있다는 것을 알게 되어서 일단 easyPHP에 XDebug를 설치했습니다. 그런데, 디버거를 사용하는게 마땅치 않았습니다. eclipse PDT라는 통합개발환경 IDE에서 디버깅을 할 수 있다는 글을 따라해 보기도 했고, notepad++에 플러그인으로 설치했다는 글을 따라하기도 했습니다. 크롬 익스텐션을 설치해보기도 했고요. 물론 모두 실패했습니다. 그래서 마지막이라는 심정으로 다시한번 검색을 해서 netbeans IDE와 XDebug를 연동할 수 있다는 글을 따라했습니다. 억지로 성공했네요. 일단 NetBeans..

기타/WWW 2016.04.30

easyPHP에 XDebug 설치하기

프로그램 개발을 위해서는 Debugger가 필수입니다. 특히 대형프로젝트가 될 수록 Debugger 없이는 거의 개발이 불가능합니다. 제가 사용중인 easyPHP에도 디버거를 설치할 수 있습니다. (다만 실행은 별도의 환경이 필요합니다. 이건 다른 글에서...) 디버거는 널리 사용되고 있는 XDebug를 사용했습니다. XDebug를 설치하려면 먼저 easyPHP에서 실행환경을 체크해야 합니다. 저는 아래와 같이 easyPHP 의 대시보디에서 "Portable Directory"로 등록된 곳에 원래 들어있는 phpinfo.php를 사용했습니다. 그냥 와 같이 한줄 짜서 실행시켜도 됩니다. 그러면 다음과 같은 화면을 볼 수 있습니다. 여기에서 빨간 표시를 한 4가지를 체크해야 합니다. 이제 xdebug.or..

기타/WWW 2016.04.27

easyPHP 설치 및 XAMPP 설치

예전에 반쯤 공부하다가 팽겨쳐 뒀던 PHP를 다시 공부하기로 했습니다. 먼저 예전처럼 Zend Server를 설치하기로 했습니다. 제가 공부하는 책에서 Zend Server를 설치하여 사용하기 때문이었습니다. 그런데 그동안 업그레이드가 되면서 무료버전이 사라졌더군요. Free Trial 버전은 1개월, 기타 학생용버전 등은 1년 이후에는 정식버전을 사야하는 것 같았습니다. 뭐 그래서 과감하게 포기. 설치하다가 에러가 발생하는 게 아니었으면 계속 갔을지도 모르지만... 하여튼... 그래서 best WAMP로 검색을 좀 해봤습니다. WAMP는 Windows + Apache + MySQL + PHP 로 구성된 Suite를 말합니다. 물론 Zend Server를 순위에 올린 사이트도 있었지만, 다른 제품도 많이..

기타/WWW 2016.04.26

Git 간단 사용법

이 글은 예전에도 관심은 있었지만 포기하고 있다가, 그래도 한번 배워야지 싶어서 며칠 들여다보고, 제 마음대로 정리한 글입니다. 왜 사용해야 하나?Git은 소스관리 도구입니다. 물론 프로그램 소스 뿐만 아니라, 텍스트형식이라면 뭐든지 추적관리할 수 있습니다. Git을 사용하면 파일을의 변화를 모두 기록합니다. 따라서 언제든지 돌릴 수 있습니다. 따라서 거의 필수적이라고 생각합니다. 특히, 클라우드 저장소인 GitHub.com 와 함께사용하면 언제든 접근할 수 있고, 다른 사람들과 협업 가능해서 활용도가 높습니다. 혼자서도 필요한가? 저는 아주 간단히 제가 필요한 프로그램을 가끔 개발합니다. 개발한다고 하기도 민망할 수준입니다. 그래도 Git이 필요한가... 라고 고민을 해봤는데, 아직 완벽하게 이해하지 ..

기타/WWW 2016.04.11

구글 드라이브 1TB 무료공간 확보하기

저는 구글 서비스를 많이 사용하는 편입니다. 클라우드 서비스가 본격적으로 시작되기 전.. 구글어스/구글지도로 부터 시작해서 gmail 이 1GB 제공할 때부터 본격적으로 구글 서비스를 써왔습니다. 요즘은 훨씬 더 의존도가 높습니다. 구글 오피스... 라고까지 부르기엔 아직 많이 약하지만, 구글 스프레드시트, 구글 독스도 많이 사용중입니다. 스마트폰을 사용하면서부터는 메일/주소록/일정표 등을 모두 구글 클라우드에 동기화 시키고 있습니다. 그중 구글 드라이브도 아주 많이 사용하고 있습니다. 다음이나 네이버에서 훨씬 많은 용량을 제공해준다고 했을 때도, 고작 15GB 를 제공해주는(그것도 메일용량까지 합해서) 구글 드라이브를 사용해 왔습니다. 그런데 최근 구글포토(Google Photo) 서비스로 고해상도 사..

기타/WWW 2015.11.27

PC의 영화를 TV에서 보는 방법 - 크롬캐스트 미러링

크롬캐스트(Chromecast)는 TV의 HDMI 포트에 연결하여 사용하는 미디어 스트리밍 기기입니다. 간단하게 말해서 PC나 스마트폰, 태블릿 등의 화면을 TV로 보내서 볼 수 있는 장비라고 생각하면 됩니다. 제가 구글 크롬캐스트를 지난 7월에 구입했으니, 벌써 6개월 정도 사용했네요. 그 당시에는 지원되는 게 많지 않았습니다. 지금은 정확히 기억은 안나지만, 안드로이드 기기의 화면은 미러링이 가능했는데, 아이폰은 잘 안되었던 것 같고, 제한없이 사용할 수 있는 건 유튜브 외 몇가지 어플 정도... 였던 걸로 기억합니다. PC 화면은 크롬 브라우저 화면만 전송할 수 있었고요. 그러니까... PC에 저장해둔 사진이나, 비디오 등을 직접 TV로 보낼 수 있는 방법은 없었습니다. 구입당시에도 미러링 기능은 ..

기타/WWW 2015.01.02

Zend Server 설치과 에러처리방법

다시 책한권을 사서 새로 공부하기 시작했습니다. 이번에는 PHP, MySQL, JavaScript, CSS, HTML5가 모두 들어 있는 책입니다. 물론 입문서겠죠. 저는 웹기술이 본격적으로 도입될 즈음 프로그램에서 손을 떼고, 현재의 분야로 옮겼기 때문에 사실 웹쪽이 어떻게 발전되어 왔는지 거의 모르고 있었습니다. 그래서 제가 이전에 시험삼아 개발한 kmap_geocaching 사이트도 거의 Javascript로만 구현되어 있습니다. (물론 다른 부분들도 조금씩 포함되어 있기는 하지만요.) 그런데, 이 책을 사서 개요부분을 읽어보니 정말 순서가 잘못되었다는 걸 깨닫게 되었습니다. 서버쪽과 클라이언트쪽을 동시에 다루어야 하는데, 저는 클라이언트쪽만 공부한 셈이었죠. 아무튼... 이 모든 기술을 좀 더 이..

기타/WWW 2014.07.23

PHP 5 투토리얼 (6) - AJAX

이제 PHP 투토리얼 시리즈 마지막입니다. AJAX네요. 어차피 클라이언트와 데이터를 주고 받으려면 AJAX를 제일 많이 쓰지 않을까... 하는 생각이 듭니다. 써봐야 알겠지만요. AJAX의 개념 Asynchronous Javascript and XML빠르고 동적인 웹페이지를 만드는 기술서버간에 작은 데이터만 교환하면서 웹페이지가 비동기적으로 갱신되도록. 즉, 화면의 일부만 갱신 가능GoogleMaps, Gmail, Youtube 등이 모두 AJAX 활용AJAX는 인터넷 표준에 기초함XMLHttpRequest (데이터를 비동기적으로 서버와 주고 받음)Javascript/DOM (정보의 표현)CSS (데이터 스타일)XML (데이터 전달 포맷) Start typing a name in the input fi..

기타/WWW 2014.06.26

PHP 5 투토리얼 (5) - XML

다섯번째는 XML. XML Expat Parser XML Parser는 두가지 종류가 있음Tree 기반 parser : XML 문서를 트리구조로 변환, 문서 전체를 분석하고, 트리의 각 요소에 접근. DOM(Document Object Model)Event 기반 parser : XML 문서를 이벤트의 연속으로 봄. 특정 이벤트가 발생하면 그와 연결된 함수를 호출하는 방식. 문서의 구조보다 내용에 집중. 더 빠르다. XML 구조에 문제가 있어도 문제없음. Expat Parser는 Event 기반 parser임. PHP 웹 어플에 최적Expat Parser는 PHP 에 내장되어 있음 XML DOM Jani레벨 1 : XML document레벨 2 : Root element : 레벨 3 : text eleme..

기타/WWW 2014.06.26