블로그 이미지
'무른모'란 부드럽다라는 뜻을 가진 '무르다'라는 말과 도구, 연장을 뜻하는 '연모'라는 순 우리말의 합성어로 소프트웨어를 말합니다. seanhigher

카테고리

분류 전체보기 (161)
Blog srart (16)
Dev Center (94)
Real Life (13)
Mac life (21)
Naver life (17)
Total662,173
Today4
Yesterday66

'HTML'에 해당되는 글 2건

  1. 2010.04.27 HTML 과 PHP 함께 사용하기. (3)
  2. 2010.03.07 MAC에서 웹 서버 시작하기.
PHP 는 PHP 이고 HTML 은 HTML 인데... 이 둘을 함께 사용하려면 어떻게 해야 할까? PHP는 ASP, JSP와 같은 스크립트 형태의 언어이기 때문에 HTML 태그에 내장되는 형태로 사용이 된다. PHP를 선언하는 태그를 HTML 문서에 포함시킨후, 태그 안에 PHP 소스를 넣으면 된다.



PHP임을 알리는 HTML 태그.
HTML 문서에 PHP임을 알리는 태그는 매우 간단하다. '<?php ?>' 또는 '<? ?>' 이다. 가운데 빈 공간에 PHP 스크립트 코드를 써 넣으면 되는 것이다. 사실 HTML 문서나, PHP 문서나 똑같은 웹 문서일 뿐이다. 확장자의 이름만 다를 뿐이다. HTML 과 PHP 문서를 구분짓는 것은 그 안에 사용되는 태그를 어떻게 사용하느냐이다. 확장자명을 PHP로 한다고 할찌라도 일반적인 HTML 태그를 사용한 소스만을 사용한다면 HTML 문서와 똑같이 작용할 뿐이다. 그렇기 때문에 PHP 로 시작하는 문서는 보통 '<?' 로 시작하게 된다.


HTML 문서안에 PHP 포함시키기.
HTML 문서에 PHP 소스를 포함시키기 위해서는 '<? ?>' 태그안에 PHP 소스를 작성하면 된다.

<PHPinHTML.html>
<HTML>
  <HEAD>
    <TITLE>HTML 안에 PHP</TITLE>
  </HEAD>
  <BODY>
    지금 시간은 <b> <? echo date("Y-m-d H:i:s") ?> </b> 입니다.
  </BODY>
</HTML>


'echo' 는 C 언어의 printf문과 같은 역할을 한다. 다음에 나오는 인자를 화면에 출력해주는 역할을 한다. date() 함수는 현재의 날짜, 시간을 출력해주는 함수이다. 위의 'PHPinHTML.html' 문서를 실행하면 다음과 같은 결과가 나오게 된다.


그림1. HTML 안에 PHP

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Seoul' for 'KST/9.0/no DST' instead in /Users/seanhigher/Sites/PHPinHTML.php on line 8

만약 위와 같은 warning 메시지를 보게된다면 타임존이 설정되지 않은것이다. 아래와같이 타임존을 설정해주는 소스를 추가해주면 에러메세지가 사라질 것이다.

<PHPinHTML.html>
  <HEAD>
    <TITLE>HTML 안에 PHP</TITLE>
    <? date_default_timezone_set('Asia/Seoul'); ?>
  </HEAD>


PHP 문서안에 HTML 포함시키기.
반대로 PHP 문서안에 HTML 태그를 포함시킬 수 도 있다. PHP 는 이렇게 유연한 방식으로 개발자들을 대하기 때문에 개발자의 사용습관에 따라 편한대로 사용할 수 있다. PHP 문서안에 HTML 태그를 포함시키기 위해서는 'echo' 함수를 사용할 수 있다. echo 는 C 에서의 printf 문과 마찬가지로 이후의 내용을 출력하는 역할을 하기 때문에 echo 의 인자로 HTML 태그를 포함시킴으로 HTML 태그를 표현할 수 있게 된다.

<HTMLinPHP.php>
<?
  echo "<HTML><HEAD><TITLE>PHP 안에 HTML</TITLE></HEAD>
  <BODY>지금 시간은 <b>";
  echo date("Y-m-d H:i:s");
  echo "</b> 입니다.</BODY></HTML>";
?>


위의 소스코드를 실행하면 'PHPinHTML.html' 문서를 실행한것과 같은 결과를 보게 될 것이다.


그림2. HTMLinPHP.html

PHP 를 사용하는 방법은 다양하다. 하지만 다양하다고 해서 편하다는 것은 아니다. 분명, 일반적인 위지윅 방식의 HTML 편집기와 함께 사용하려고 한다면 어려움이 있기 마련이다. 하지만 이런 문제를 단번에 해결하면서도 좀더 효율적으로 PHP 소스를 활용할 수 있는 방법이 있다. include() 함수가 그 방법이다!


통째로 포함시키기.
수십페이지에 달하는 웹 페이지를 제작하려고 하는 개발자가 있다. 하지만, 모든 페이지가 대부분 같은 폼을 가지고 있다. 똑같은 작업을 수십번 반복해야 하는 것이다. 만들때는 새로 만들어서 복사하면 된다고 하지만, 수정을 해야 할때는 대책없이 수십개의 문서를 일일이 수정해 주어야 한다. 이럴때, 템플릿을 활용하면 훨씬 수월하게 작업을 하고, 웹페이지 유지보수를 할 수 있다. 똑같은 형식을 갖는 부분을 템플릿으로 만들고 수십개의 문서에 그것을 포함시키는 형식으로 적용을 시키는 것이다. 수정을 할 때는 템플릿만 수정을 하게 되면 모든 템플릿을 포함한 모든 문서에 똑같이 적용이 되는 것이다.


그림3. 템플릿의 활용

템플릿은 HTML 문서로 작성하여도, PHP 문서로 작성하여도 무방하다. 템플릿 문서를 포함하고자 하는 문서에 '<? include "템플릿 문서"; ?>' 와 같은 형식을 취하면 된다.

<TimeTemplate.php>
<?
  echo "지금 시간은";
  echo date("Y-m-d H:i:s");
  echo "입니다";
?>

<documentA.html>
<HTML>
  <HEAD>
    <TITLE>템플릿의 활용</TITLE>
  </HEAD>
  <BODY>
  <? include "TimeTemplate.php"; ?>
  </BODY>
</HTML>


위의 두개의 파일을 실행하면 다음과 같이 실행되는 것을 알 수 있다.


그림4. documentA.html (include TimeTemplate.php 포함)

위에서 설명한 예제는 간단하지만, 좀더 큰 규모의 웹 페이지를 제작하게 될 경우에 템플릿을 사용하여 효율성을 극대화 하는 것은 꼭 필요한 기능이다.



'Dev Center > PHP start' 카테고리의 다른 글

PHP 의 변수.  (0) 2010.05.01
timezone 설정하기.  (0) 2010.04.30
PHP 에 무슨 문제라도??  (0) 2010.04.29
HTML 과 PHP 함께 사용하기.  (3) 2010.04.27
eclipse에 PDT 설치하기.  (0) 2010.03.27
PHPeclipse 설치하기.  (2) 2010.03.15
Posted by seanhigher

댓글을 달아 주세요

  1. 2010.04.28 00:54  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다

  2. 2015.12.31 22:34 신고 소울라이어  댓글주소  수정/삭제  댓글쓰기

    제가 개념이 없어서 그러는데요.
    티스토리 블로그에 글쓰기를 한다음 HTML모드에서 이 코드를 적으면요
    <HTML>
    <HEAD>
    <TITLE>HTML 안에 PHP</TITLE>
    </HEAD>
    <BODY>
    지금 시간은 <b> <? echo "ㅇㅇㅇㅇㅇㅇㅇ"; ?> </b> 입니다.
    </BODY>
    </HTML>

    안나오는게 정상인가여?

Mac OS X 에서는 대부분의 기능들이 간단고 쉽게 사용할 수 있게 구성되어 있다. 우리가 흔히 어려울 것이라고 걱정하고 사용하지 못했던 기능들이 단 몇번의 클릭만으로 사용할 수 있게 되는 것이다. '웹 공유'라고 명명되어 있는 웹 서버 기능 역시 손쉽게 이용 가능하고, 여러분들의 홈페이지를 인터넷에 공유하는 것이 가능하다.


웹 서버.
웹 서버란, 우리가 웹 브라우저를 통해 보고 있는 모든 페이지들이 화면에 표시될 수 있도록 하는 모든 하드웨어, 소프트웨어를 통칭한다. 사용자로부터 HTTP에 대한 요청을 받아들이고, HTML문서들을 해석하는 기능을 가지고 있다. 언뜻보면 굉장히 광대하고 어려운 것처럼 보이지만, 여러분들도 마음만 먹으면 자신의 홈페이지나 블로그를 서비스할 수 있는 웹서버를 만드는 일은 어렵지 않다. 단, 맥을 사용하고 있다는 전제조건 하에서...


웹 공유 시작하기.
맥에서 웹 서버를 시작한다는 것은 정말 간단하다. 아마 이 포스트를 보는 시간보다, 여러분들이 웹 서버를 시작시키는 시간이 몇배나 더 빠를 것이다.

그림1. Dock에서 '시스템 환경설정' 선택하기.

웹 공유 서비스를 '시스템 환경설정'패널에서 찾을 수 있다.


그림2. 시스템 환경설정

빨간색 네모로 표시되어 있는 '공유'를 선택한다.


그림3. 웹 공유 : 꺼짐

기본설정에는 웹공유가 꺼져있다. 이는 보안상의 이유로 공유가 꺼져있는 것이다. 설명에 보면 '다른 컴퓨터의 사용자가 이 컴퓨터의 웹 페이지를 볼 수 있도록 합니다'라고 표시되어 있는데, 이것은 'html로 된 웹 페이지를 다른 컴퓨터에서 볼 수있도록 서비스 한다' 라는 말이다.


그림4. 웹공유 : 켜짐

앞의 체크박스를 선택하여 웹 공유를 '켬' 상태로 바꾸면 두개의 웹 주소를 얻을 수가 있다. 위의 그림처럼 숫자로만 되어 있는 http://192.168.0.23/는 이라는 주소는 네크워크상의 다른 컴퓨터에서 내 컴퓨터에 접속할때의 주소를 나타내며 자신의 컴퓨터에서 접속을 할때는 IP주소 대신에 http://localhost/로도 접속할 수 있다. http://192.168.0.23/~사용자 이름/ 으로 되어 있는 주소는 내 컴퓨터 내에서도 사용자 계정으로 접속할 수 있는 페이지를 나타낸다. 마치 우리가 tistoty.com에 접속하게 되면 티스토리 메인 페이지에 접속하게 되지만, devist.tistory.com에 접속하게 되면 devist의 블로그를 볼 수 있는 것과 마찬가지이다. Mac OS X에서도 사용자를 계속해서 만들게 되면 사용자 계정만큼 더 많은 웹 페이지를 서비스 할 수 있게 되는 것이다.

각 계정이 홈 디렉토리는 다음과 같다.

http://localhost/   ---   HD:/라이브러리/webserver/Document/
http://localhost/~사용자/   ---   HD:/usr/사용자/사이트/

루트 디렉토리에 index파일을 넣으면 위 주소로 접속했을때 그 웹페이지 파일이 보여지게 되는 것이다.


그림5. http://lcalhost/ 에 접속한 화면.

그림6. http://localhost/~사용자/ 에 접속한 화면.


자신의 홈 디렉토리에 웹페이지를 만들어놓고, 공유된 IP주소를 알려주면 훌륭한 웹 서버 한대가 탄생하게 되는 것이다. 가장 중요한 것은 웹 페이지를 얼마나 훌륭하게 만드는가 이기도 하다!
Posted by seanhigher

댓글을 달아 주세요

최근에 달린 댓글

글 보관함