<< 통프레임 홈페이지 설계하기
>>
통프레음 홈페이지에 대한 자료를 원하시는 분이 있어서 이렇게 글을
적게 되었습니다.
제가 사용하고 있는 전체 디렉토리 구조를 알려 드리겠습니다.
차근차근 살펴 보세요.!!
public_html
+ main
+ frame
- main.html
&nb
sp; :
홈페이지 초기화면
-
top2.html
:
페이지의 취쪽 부분, 왼족 메뉴가 있다.
-
top3.html
:
페이지의 위쪽 부분, 왼쪽 메뉴가 없다.
-
bottom.html &nbs
p; :
페이지의 아래 부분
- menu.html
&nb
sp; :
페이지의 상단 메뉴바
-
left.html
:
페이지의 왼쪽 메뉴
+
sms
&nb
sp; :
문자나라 메뉴
-
index.html  
; :
문자나라 메인 화면
-
left.html
:
왼쪽 메뉴
+
include &n
bsp;  
; :
전체 설정 파일이 들어 있다.
-
head.html
:
php 작성시 필요한 기본적 정보가 들어 있다.
-
dbconfig.html &n
bsp; :
db 접속에 관련된 정보가 들어있다.
-
copyright.html : 카피라이터
부분이 들어 있다.
-
style.css
:
홈페이지 전체 스타일 시트
경우에 따라서는 js 디렉토리를 만들어 javascript 자료를 넣어두면
쓰기 편하다.
위의 디렉토리 구조가 제가 사용하는 디렉토리 구조를 간략하게 만든
겁니다.
이제 main/frame 디렉토리의 파일을 이용해서 통프레임을 만들어 보겠
습니다.
일단.. 홈페이지의 전체적인 구성을 생각합니다.
전 위쪽메뉴, 왼쪽메뉴, 내용 이렇게 3가지로 만들 겠습니다.
일단.. 테이블을 하나 만들어서 전체적인 틀을 잡습니다.
제 홈피의 경우는 다음과 같겠죠..
========================== 전체 구조
================================================
<html>
<HEAD>
<TITLE>형화의 PHP 페이지</TITLE>
<LINK REL='stylesheet' TYPE='text/css'
HREF='../../style.css'>
<META content="text/html; charset=ks_c_5601-
1987"
http-equiv=Content-Type>
</HEAD>
<body>
<table width="750" bgcolor="#003399"
cellspacing=0
border=0 cellpadding=0>
<tr>
<td colspan='2'>
위쪽 메뉴
</td>
</tr>
<tr>
<td>
왼쪽 메뉴
</td>
<td>
내용이 들어간다.
</td>
</tr>
</table>
</body>
</html>
========================== /전체 구조
================================================
이렇게 됩니다. 여기서.. 내용 전까지를 top2.html 로 사용하시고,
그리고, 내용 다음부터 마지막 까지를 bottom.html 로 저장하면 됩니
다.
========================= top2.html
================================================
<html>
<HEAD>
<TITLE>형화의 PHP 페이지</TITLE>
<LINK REL='stylesheet' TYPE='text/css'
HREF='../../style.css'>
<META content="text/html; charset=ks_c_5601-
1987"
http-equiv=Content-Type>
</HEAD>
<body>
<table width="750" bgcolor="#003399"
cellspacing=0
border=0 cellpadding=0>
<tr>
<td colspan='2'>
위쪽 메뉴
</td>
</tr>
<tr>
<td>
왼쪽 메뉴
</td>
<td>
========================= /top2.html
================================================
========================= bottom.html
================================================
</td>
</tr>
</table>
</body>
========================= /bottom.html
================================================
그리고, 이제 위쪽 메뉴를 만드시면 됩니다.
프로그램을 만들때는 일단 테이블을 이용해서 전체 구조를 잡으세요.
위쪽 메뉴를
만들기 위해
일단 테이블의 width=100% 으로 하시고 테이블 안에 필요한 내용을 넣
으시면 됩니다.
전체 홈페이지가를 보기 좋게 만들려면 table 을 잘 쓰시는게 상책입
니다.
================================= menu.html
==============================================
<table width=100%
bgcolor="#c8d8f8"
cellspacing=0 border=0 cellpadding=0>
<tr>
<t
d>HOME</td>
<t
d>게시판</td>
<t
d>자료실</td>
<t
d>강좌</td>
</tr>
</table>
================================= /menu.html
==============================================
이런식으로 만드시면 됩니다. 만들어 졌으면 top2.html 의 "위
쪽 메뉴"
에 menu.html 을
include 하면 됩니다. 그리고, 왼쪽 메뉴도 top.html 과 비슷하게 만
드시면 되지요.
여기서 중요한 점은 테이블을 사용해서 디자인을 맞춰야 된다는 것입
니다.
외쪽 메뉴에 메뉴목록, 함수검색, 배너 등이 들어간다. 다음과 같이
하면 됩니다.
일단. 테이블을 만들어서 각 row 마다 메뉴목록, 함수검색, 배너를 넣
을수 있도록
합니다.
그리고, 나서 각 메뉴들을 테이블 형식으로 만들면 되지요.
================================= left.html
==============================================
<table width=100%
bgcolor="#c8d8f8"
cellspacing=0 border=0 cellpadding=0>
<tr>
<t
d>
메뉴
목록 테이블
</
td>
</tr>
<tr>
<t
d>
함수
검색 테이블
</
td>
</tr>
<tr>
<t
d>
배너
테이블
</
td>
</tr>
</table>
&nb
sp;
================================= /left.html
==============================================
이렇게 left.html 을 설계하시면 됩니다. 지금까지 한것을 보면 다른
페이지에
들어가는 페이지는
전부 테이블로 시작하고, width=100% 인걸 보실수 있습니다.
이렇게 하면 한번 만들고 나서 나중에 다른곳에 끼워 넣기가 편합니
다.
그럼.. 이제 메인 화면을 만들어 보겠습니다.
================================== main.html
===============================================
<?
# 위쪽 메뉴와 외쪽 메뉴 링크
require("../frame/top2.html");
echo "통프레임을 이용한 메인 페이지 입니다!!!";
# 아래쪽 링크
require("../frame/bottom.html");
?>
================================== /main.html
===============================================
=================================== top2.html
===============================================
<html>
<HEAD>
<TITLE>형화의 PHP 페이지</TITLE>
<LINK REL='stylesheet' TYPE='text/css'
HREF='../../style.css'>
<META content="text/html; charset=ks_c_5601-
1987"
http-equiv=Content-Type>
</HEAD>
<body>
<table width="750" bgcolor="#003399"
cellspacing=0
border=0 cellpadding=0>
<tr>
<td colspan='2'>
<?
# 위쪽 메뉴 링크
require("../frame/menu.html");
?>
</td>
</tr>
<tr>
<td>
<?
# 왼쪽 메뉴 링크
require("left.html");
?>
</td>
<td>
=================================== /top2.html
===============================================
=================================== left.html
===============================================
<table width=100%
bgcolor="#c8d8f8"
cellspacing=0 border=0 cellpadding=0>
<tr>
<t
d>
<?
# 메뉴목록 테이블
require("list.html");
?>
</
td>
</tr>
<tr>
<t
d>
<?
# 함수검색 테이블
require("../frame/search.html");
?>
</
td>
</tr>
<tr>
<t
d>
<?
# 배너 테이블
require("../frame/baner.html");
?>
</
td>
</tr>
</table>
=================================== /left.html
===============================================
=================================== bottom.html
===============================================
</td>
</tr>
<?
# copyright 링크
require("../../include/copyright.html");
?>
</table>
</body>
=================================== /bottom.html
===============================================
이렇게 하면 전체 통프레임 홈피를 만들수 있게 됩니다.
[참고] require() 와 include() 는 지정한 파일을 해석한
다는 위미에서는
비슷합니다.
require() 는 지정한 파일을 가져와서 소스에 추가하지
만 include()
는 호출때 마다
지정한 파일을 해석합니다. 그렇기 때문에 while, for 등
의 중첩문에서는
require() 를 사용할 수 없습니다.
그리고, if 문등에서 사용할때 꼭 "{",
"}"
를 사용해서 공간을 지정해 주셔야 됩니다.
여기서 중요한 것은 top2.html 을 보시면 아래와 같은것이 있습니다.
require("../frame/menu.html")
require("left.html");
여기서 menu.html 은 상대경로로 frame 디렉토리를 나타낸것은 위쪽
메뉴는 각
메뉴마다 변하지 않기 때문에
상대경로로 하나의 파일을 가리키게 한 것이고, 왼쪽 메뉴는 상위 메
뉴마다 다를수
있기 때문에
그 디렉토리에 있는 left.html 을 읽게 한 것입니다.
새로운 메뉴를 만들려면 일단.. 왼쪽 메뉴에 무엇을 넣을건지 정하시
고..
만약 왼쪽 메뉴가 이미 만들어져 있으면 ln 명령어를 사용해서 심볼
릭 링크를
하시면 좋습니다.
$ ln -s 이미만들어진파일 링크를마들파일
$ ln -s ../frame/left.html left.html
이렇게 하시면 관리하기도 편합니다.
그리고, top.html 과 bottom.html 을 include 하시면 됩니다.
그럼... 질문은 Q & A 를 이용해 주세요.!!