웹마스터 팁

오늘 할 것은

메뉴에서 게시판 아이디를 클릭했을 때 제일 처음 보이는 list.php 파일의 모양새를 보겠습니다

그후 view.php 파일의 모양새를 설명한 다음  디비에 게시판의 정보와  들어온 메모를 담을 수 있는 테이블을

생성해 보며  테스트 하기 위해 만들어진 글들이 게시판에서 잘 불러와 지는지를 보는 식으로 넘어가겠습니다

그 후 글쓰기 파일과 그 글들을 올리거나 지우는 파일  그 다음 코멘트를  만드는 식으로 넘어 가겠습니다




제가 하는 방식은 일종의 멀티형 게시판(?) 이라구 할 수 있습니다

게시판의 기본 정보는 따로 담겨지구 게시판에 들어가는 기본 정보인 글이나 글쓴이 날짜 등은 게시판 하나에

디비 테이블을 하나씩 찾이하는게 아닌  하나의 테이블에 모든 게시판의 글이 들어갑니다

디비 효율성에선 괜챦지만 양이 늘어 남으로써 불러들이는 시간이 길어지거나 혹은 코드가 늘어남으로써

더 복잡해 질 수 있습니다  게시판은 보통 일반 게시판 자료형 게시판 엘범형 게시판 메모장 방명록 정도면

왠만큼 쓸 수 있는 형태가 되리라 믿습니다

게시판 타입별로 디비 테이블을 생성할까도 했지만  가능성을 보고자 하나의 테이블에 모든 글을 담아 봤습니다

미니홈에 관심이 많으신 분은 예성님이 내 놓으신 개인 메모장을 생각하시면  됩니다

제로보드 처럼 게시판 하나에 여러개의 테이블이 생성되는게 아닌 하나의 테이블을 놓구 공유 하는게 되는거죠

차후에 불러오기가 늦다던지 그럴 경우엔 각자의 마음대로 게시판타입이나 아니면 정해 놓은 게시판 숫자에

의해 글을 담는 테이블을 늘려주면 아무래도 좀 낫겠죠

정확한 테스트는 아니지만 글을 15만개 올렸을 때 그 글을 클릭하구 게시물을 찾아오는 시간은 10초 정도

내용 찾기를 했을 때는 10초에서 15 초 정도 걸리더군요 늦어질 때는 대략 30초

이건 제대로 된 테스트가 아닌  for 문을 이용한  일방적인 글을 올렸을 때 입니다 (그림 같은 파일은 들어가지

않은 상태입니다  단순히 글 위주로 )

글을 찾아 올때는 여러가지 조건이 담기는데  그 조건들을 무시한 채  내용과 글 쓴이 날짜만으로 올린 결과 입니다

무식하게 for문만으로 글 하나를  돌려서 올려본거죠 어떤식의 결과가 나올지 궁금해서...

제가 만든 미니홈에 들어간 게시판에는 그 게시판의 고유 코드들이 몇개 있습니다 그 코드들을 무시한 채

올린 결과이구 정확한 테스트가 아니며 인덱스 키가 걸리지 않은 상태에서 일반적인 불러오기였을 때의

시간이였습니다   만약 제대로 글을  올리구 제대로 된 키 값들이 들어가며 어느 정도의 튜닝이 되었다면

최소 5초에서 최대 20초 정도는 되겠더군요  만여개의 글은 대략 3초에서8초 사이 안으로 뽑아 옵니다

만족할 만한 시간 값은 아니지만

일반 개인 홈페이지에서 십오 만여개의 글을 넘긴다는게 그리 쉽지만은 않기에 보통 사용자들은 쓰기에

큰 부담 없는 시간대가 나올듯 합니다  

제대로 된글을 현재의  소스로 불러오기를 한다면 만여개의 글 까지는 그리 지루하게 기다려지는 느낌은

들지 않으리라 봅니다  게시물 중 용량을 찾이 하는 그림이 들어간 경우에는 조금 길어질 수 있습니다

추후에 좀 더 시간을 단축할수 있는 튜닝 기법을 배운다면

그 때 새로운 방법을 알려 드리겠습니다

# 다시한번 말씀드리지만 위에한 테스트는 정확한 테스트가 아닙니다 상황이나 조건을 하나도 안 맞춘거니

오해 없으시길 바랍니다



list.php의 모습입니다


<?
//제로보드 절대 상대 리브 파일 인크루드

// DB 연결


// 멤버정보 구하기

// 게시판 정보를 갖고옴;;


// $data 가 없을때, 게시판이 없을 때 에러 표시


// 선택된 메모가 있을시 데이타 뽑아오기;;

// 전체 글의 갯수

//검색 조건 있을시 전체 갯수 구하기;;


// 페이지 계산


// 데이타 뽑아오는 부분...


//$que 에 대한 정의


// 검색어 있으면 데이터 뽑기


// 페이지 계산



// 아바타 불러오기;



//게시판 접근 권한 체크


//글읽기 권한 체크


//글쓰기 권한 체크



?>

<? // 게시판이 있으면 데이터 불러오기:시작;;
        if($data[no]) {
?>
<html>
자바 스크립트

--전페이지에서 쓰인 테이블 태그 시작 (배경 그림 지정)--

게시판의 맨 윗 공간 ( 게시판 이름이나 게시판 에디트 링크 혹은 게시물의 수가 들어가는 곳 )

번호 제목 글쓴이 날짜 조회 추천등 상황 판 들어가는 곳

1픽셀의 회색 가로 부분

<tr>
<?// 공통 화일문 리스트 출력
$loop_number=$total-($page-1)*$page_num;
        while($data=mysql_fetch_array($result)) {


//번호 제목 글쓴이 날짜 조회 추천 이메일 홈페이지 등 기본 사항에 대한 정의

//비밀글일 때 비밀글 표시



?>



번호 제목 이름 날짜 조회 추전  들어가는 부분 (내용 부분)


</tr>
1픽셀의 아래 회색 막대 부분
<?
    $loop_number--;
    }
?>


글목록  글쓰기 버튼


페이지              

찾기 기능


테이블 닫음 태그

<?
접근 권한이나 읽기 쓰기 권한에 대한 알러트

?>

<?
// MySQL 닫기
        if($connect) mysql_close($connect);
?>
이정도의 수순으로 list.php가 만들어 집니다


바로 코드를 써서 설명 드리지 않는것은 모양새가 어떻게 돌아가는지를 파악해야 차후에

소스를 고치거나 혹은 넣을 때 용이하기 때문입니다

제목 글쓴이 날짜
개판 오분전 라인 그래프 [4] 미친개 2004.12.01
실명 진위여부 확인 [10] piasol 2004.12.01
나만의 미니홈 만들기 ㅡ write.php 파일과 write_ok [5] 예뜨락 2004.11.30
나만의 미니홈 만들기 ㅡ view.php 파일과 제목링크 [9] file 예뜨락 2004.11.27
나만의 미니홈 만들기 ㅡ list.php , 디비 테이블 생성 [6] file 예뜨락 2004.11.26
나만의 미니홈 만들기 ㅡ 게시판 list.php 파일의 모양새 [6] 예뜨락 2004.11.23
나만의 미니홈 만들기 ㅡ 게시판의 디자인 file 예뜨락 2004.11.22
나만의 미니홈 만들기 ㅡ 미니홈 생성 페이지 [3] file 예뜨락 2004.11.20
나만의 미니홈 만들기 ㅡ 기초적인 관리 페이지 [3] file 예뜨락 2004.11.20
나만의 미니홈 만들기 ㅡ 메인 기초 설계3 .레이아웃 [2] file 예뜨락 2004.11.19
나만의 미니홈 만들기 ㅡ 메인 기초 설계2 .레이아웃 예뜨락 2004.11.18
나만의 미니홈 만들기 ㅡ 글쓰기에 앞서... [1] 예뜨락 2004.11.17
[타키의 초보강좌]PHP 기초 강좌 제 2탄[mysql로 들어가보자.] [2] 타키 2004.10.24
소수[솟수] 쉽게 구하기[에라토스테네스의 해 알고리즘사용] , 경우의 수 구하기 [5] 타키 2004.10.23
[타키의 초보강좌]PHP 기초 강좌 제 1탄[패스워드 인증] [8] 타키 2004.10.23
www자동 붙히기 [8] 미오유 2004.10.22
IP to 정수변환(;) [4] 플로렐라 2004.10.21
한글자르는 문제 PHP차원에서 해결된 건가? [5] 겜방 2004.10.20
MySQL의 패턴 매칭 맛보기 [2] 손상모 2004.10.19
그래프 만들어주는 소스 [10] 미친개 2004.10.15