웹마스터 팁

지난번에 말한것과 같이 제로보드 로그인의 독특한 구조로 outlogin.php를 include한 페이지는 mysql를 호출하는데 별도로 서버및 테이블 설정할 할 필요가 없다고 하였습니다.

그와 더불어 로그인 정보를 그페이지에서 이용할수 있다고도 하였습니다. 이게 제로보도의 매력입니다. 간혹 몇몇 사용자는 이때문에 mysql를 너무 과도하게 이용한다고 하지만 이건 크게 근거는 없습니다. 어차피 각 페이지에 sql를 이용한 프로그램들이 한번이라도 들어간다면 한번 mysql를 연다고 봐야 합니다. 아울러 게시판을 한번 열면 close까지 한번 실행합니다.

프로그램을 제작하면서 몇번이고 생각해야 될 부분들이 많이 줄어 들게 됩니다. 그래서 제로보드를 이용하면서 타 프로그램을 제작하여 운영해도 db핸드링에 고민하지 않고 몇가지 sql만 호출해서 뿌려도 문제가 없어지니 그만큼 편해 지는겁니다.

그럼 단순하게 회원 목록을 나타나게 한다면

<?
-생략-
include "outlogin"; ?>

이렇게 페이지 첫번째 줄에 선언하고
<table>
<tr><td>이름</td><td>아이디</td><td>메일</td></tr>
<?
$result=mysql_query("select * from zetyx_member_table order by no asc");
while($data=mysql_fetch_array($result))

{
?>
<tr><td><?=$data[name]?></td><td><?=$data[user_id]?></td><td><?=$data[email?></td></tr>
<?
}
?>

</table>

이렇게 하면 모든 회원의 목록이 나오게 될겁니다.
여기서 편리한점이 db설정을 하지 않았다는점입니다. 이미 outlogin.php를 include 하였기 때문에 db설정 부분을 신경쓰지 않아도 운영된다는점이 제로보드가 편리한 이유이기도 합니다.

만약 조금 응용해보면
자신일때 <본인> 이라는 글이 나오도록 하려면 타 게시판에서는 쿠키나 세션을 확인해야 되지만 제로보드는 outlogin를 include할때 이미 로그인 정보를 가지고 있기 때문에 $member의 배열과 회원목록의 배열 $data를 확인만 시키면 된다는점입니다.

그럼 위 부분을 수정해 보겠습니다.


<table>
<tr><td>이름</td><td>아이디</td><td>메일</td></tr>
<?
$result=mysql_query("select * from zetyx_member_table order by no asc");
while($data=mysql_fetch_array($result))

{
?>
<tr><td><?=$data[name]?>
<?
if ($data[user_id]==$member[user_id]){
echo "<font color=red><본인></font>";
}
?>
</td><td><?=$data[user_id]?></td><td><?=$data[email?></td></tr>
<?
}
?>

</table>

이렇게 간단하게 비교만 하면 된다는점입니다.
<?
if ($data[user_id]==$member[user_id]){
echo "<font color=red><본인></font>";
}
?>
첨가한 부분입니다. 로그인의 $member배열의 아이디와 순차적으로 불어올 회원목록 $data의 user_id만 비교하면 간단히 조건문을 넣어 해결됩니다. 이런방법으로 운영하면 쉽게 프로그램을 만들어 가면서 자기만의 홈페이지를 만들수 있습니다.


참고 -----
$result=mysql_query("select * from zetyx_member_table order by no asc");
while($data=mysql_fetch_array($result))
이렇게 하면 회원이 가입한 순차적으로 나옵니다. 그럼 반대로할때는 어떻게 할까요

$result=mysql_query("select * from zetyx_member_table order by no desc");
while($data=mysql_fetch_array($result))

이렇게 하시면 됩니다.

생일을 알아 낸다든지 주소를 비교하여 지역을 찾아 낸다든지 한는것도 별도의 프로그램이 아니고
sql로 처리한다는점도 기억해 두세요. mysql를 사용하기 때문에 sql문법은 asp든지 오라클이든지 크게 다르지 않습니다. 경험으로 비주얼베이직으로 제로보드 회원및 기타 관리를 제작하면서 느낀것이 sql은 거의 비슷하다는 점입니다.

그러니깐 sql은 한번쯤 공부해 두시면 c를 하든지 무슨 프로그램을 하셔도 똑같이 이용된다고 보시면 됩니다.
ms access에서 제로보드를 보게 되는 이유도 이 sql부분에 대한 동일된 약속들 때문입니다.

문법을 많이 활용은 해야 되지만 sql의 기본이 없다면 10스탭으로 제작할수 있는일을 몇만 step으로 제작해야 하고 0.1초에 처리 가능한 부분을 1분씩 처리하는데 차이가 있습니다.

sql마법사는 ms access에 테이블을 만들고 이러 저리 조합을 해보시면 의외의 sql 문법들이 나옵니다. 꼭 공부해 보시길 바랍니다.
제목 글쓴이 날짜
나만의 미니홈 만들기 ㅡ list.php , 디비 테이블 생성 [6] file 예뜨락 2004.11.26
나만의 미니홈 만들기 ㅡ 미니홈 생성 페이지 [3] file 예뜨락 2004.11.20
나만의 미니홈 만들기 ㅡ 기초적인 관리 페이지 [3] file 예뜨락 2004.11.20
나만의 미니홈 만들기 ㅡ 메인 기초 설계3 .레이아웃 [2] file 예뜨락 2004.11.19
나만의 미니홈 만들기 ㅡ 메인 기초 설계 .home.php [12] file 예뜨락 2004.11.17
나만의 미니홈 만들기 ㅡ 글쓰기에 앞서... [1] 예뜨락 2004.11.17
PHP프로그램에 간단한 인증(로그인) 걸기. [15] Lepas 2004.08.09
히어닥 문법 활용 [14] ☺심심 2004.07.13
해당 ftp 파일 서버에서 다른곳의 ftp 파일 서버로 백업용도 및 전송하기.. [9] 김동욱 2004.05.30
제로카운터 쉽게 설치하기 [26] file 대류 2004.01.17
세션을 이용한 관리자 모드 구축하기 3강 [6] 박정호 2003.12.09
세션을 이용한 관리자 모드 구축하기 2강 [6] 박정호 2003.12.09
세션을 이용한 관리자 모드 구축하기 1강(중복?) 박정호 2003.12.09
한꼬마의 제로보드 이용법 (sql로 테이블 호출) [2] 한꼬마 2003.11.26
[Lotto 6/45] 로또 추첨 구현하기~ [5] file 전원주 2003.11.21
한꼬마의 제로보드 활용방법 (로그인 값 알아 보기) [3] 한꼬마 2003.11.20
홈페이지 관리자 모드 구축하기 (HTTP 인증, 중복 맞음) [10] file 9000㎒ 2003.11.01
알기쉬운 웹용 MySQL 관리도구, phpMyAdmin 설치하기 [10] 허창원 2003.10.11
제로보드 + MSN 메신저 (작성글에 리플이나 코멘트가 달리면 MSN으로 알려준다?) [18] file HungryMania 2003.08.01
세션파일 크기/만들어진 시간체크해서 정해진 시간이후엔 파일 지우기?;; (라고 써야되낭? ;;) [6] 다오케이 2003.05.12