무플 무서워요
우연한 기회가 있어 linux에 AMP를 설치하고 drupal설치를 해봤다. 설치는 생각보다 쉬웠고(한글로된 설치 방법은 쉽게 찾을 수 있음), 모든 것이 뜻대로 되어가고 있었으나...

처음 설치 완료 후 administer->logs->status report를 확인 했는데 에러가 몇 개 있었다. GD library 에러를 제외 하고는 쉽게 해결을 했다. GD library를 설치 해야하는 문제는... 리눅스 환경에서 무언가를 설치한다는게 쉽지만은 않은 초보의 위치라 오랫동안 해매던 중 우분투에서 패키지로 제공된다는 글을 보고
apt-get install php5-gd
로 쉽게 설치 할 수 있었다. 첫번째 문제는 이렇게 해결.

두번째 문제는 모듈을 이것저것 설치하면서 발생 했는데, 관리자 화면에 들어가려고 하면 아래와 같은 에러가 발생한다.
Fatal error : Allowed memory size of x bytes exhausted(tried to allocate Y bytes)...
이 문제는 도무지 쉽게 해결을 할 수 없었다. 검색을 통해 알아보던 중 php.ini파일에서 memory_limit 값을 올려보라는 답변이 많길래 값을 여러번 바꿔보면서 해봐도 도무지 해결되지 않았다. firefox에 관련 페이지의 탭을 수십개는 띄워놓고 그렇게 있던 중, drupal 사이트에서 관련 FAQ를 제공해 주고 있는 것을 알 수 있었다.
(해당 링크 : http://drupal.org/node/76156)
php.ini 파일에 있는 memory_limt = 12M 를 수정
(이쪽 문제는 아니었음 32M로 잡혀있었다)
drupal/sites/default/settings.php 에 ini_set('memory_limit', '12M'); 를 추가
(이 부분을 추가시켜주고 실행 했더니 잘 돌아가서 에러 해결)
php_value memory_limit 12M 를 drupal root에 있는 .htaccess 파일에 추가
(이건 무슨 말인지 모르겠다 저런 파일이 없는거 같던데... 혹시 아시는 분은 좀 알려주세요)
위와 같이 수정하고 나니 모든 것이 잘 돌아갔다. 설치 하나로 몇 시간 헤맨게 너무 아쉽다. 지난번에도 느꼈지만 기본으로 제공하는 문서는 반드시 읽어봐야 하고, 에러가 났을 경우에도 기본으로 제공하는 문서에서 검색해서 보는 것이 가장 좋은 것 같다.

이거 설치하면서 영어 문서를 제법 많이 보게 되었는데, 그 동안 갖고 있던 영어 문서에 대한 두려움이 어느정도 가시게 됐다. 다음에는 drupal을 설치 하면서 찾은 관련 URL을 포스팅 해야겠다.
:

openAPI 사용해보기

Dev. Diary 2008. 7. 8. 23:55 |
PHP가 아직 익숙하지 않은 이 때에 openAPI를 이용한 개발을 해야만해서 샘플 코드를 구경하면서 이것저것 만져봤다. 처음에는 쉽게 생각하고 똑같이 따라서 코드만 넣어봤는데, 그것만으로는 openAPI사용법을 - 당연히 - 익힐 수 없었다.

하나하나 뜯어 보면서 - 샘플 코드에 나와 있는 각종 함수들이 무엇을 의미하는지 찾아보고 - 코드를 분석해 보니 서서히 길이 보이기 시작했다. 프로그래밍도 많이 해보지 않았거니와 PHP를 처음 써보는데 당연히 이렇게 했어야 했다.

중간에 가장 헤맨 부분은 simplexml_load_file 이라는 함수로 해당 openAPI의 XML값을 받아오는 것이었는데, 당연히 문자열로 반환받아서 출력해주면 나오겠거니 했었다.(아는 사람들은 알겠지만 object 형태로 반환해 주는 함수다.) object를 반환해주는데 문자열 다루듯이 echo(출력)를 이래저래 해주면서 끙끙거렸으니 될리 없었다.
object simplexml_load_file ( string $filename [, string $class_name [, int $options [, string $ns [, bool $is_prefix ]]]] )
결국은 다시 한번 PHP manual을 보고 알게 되었지만, 쉽게 끝낼 수 있었던 부분에서 시간을 끌었던 것이 너무 아쉽다. 앞으로는 매뉴얼을 꼼꼼히 읽어야겠다.
:
스크립트 언어를 공부하기 시작했다. JSP를 공부하고 싶었으나, 당장에 필요한 PHP를 해야만 했다. 이틀정도 문법을 익히고 - 문법은 그동안 사용했던 언어들과 다른 점이 거의 없어 익히기 편했다.(더 쉽게 적응 할 수 있는 부분도 있었고...) 이틀동안 익힌 것으로 무엇을 만들 수 있을까 생각하던 중, 어린 시절 웹사이트에서 메일 보내는 양식을 HTML로 만들다가 실패한 생각이 나서(그 당시 나는 HTML로 폼만 만들면 메일을 보낼 수 있는 줄 알았다;;) 만들어보기로 했다.

e-mail form

예외처리도 안 했고, 폼에 신경도 안 썼다(초등학생 수준). 단지 추가한게 있다면, send버튼 밑에 있는 상태 표시 텍스트. (메일이 성공적으로 발송되면 seccess를 출력, 실패하면 failure를 출력) 메일 보내는 함수 사용법을 알게 된 것과,(보다시피 어려울 것 없다)
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
몇 일간 공부한 언어에 대한 감을 잡아간다는 것 정도... (정말 별거 없으므로 소스코드 요구하시면 안됩니다;;)

다음에는 SQL공부해서 메일링 리스트 관리 양식을 만들어봐야겠다.
: