솔직히....정상적으로 php를 공부한것이 아니기 때문에...알고 있는 부분만 적습니다.
다른 방법도 존재할것이고...더 좋은 방법이 있지만....아는 부분까지만 올릴게요
DB에서 값을 불러올때는
$sql = " select * from g4_member where mb_1 = '남자' order by mb_id limit 10 ";
$result = sql_query($sql);
$result = sql_query($sql);
$row=sql_fetch_array($result);
이런식으로 표현을 합니다.
하나하나 짚어보자면
select * from g4_member where mb_1 = '남자' order by mb_id limit 10
이것이 DB에 연결해서 데이터를 불러오도록 설정하는 것입니다
* 는 g4_memmber 테이블에 있는 모든 필드값을 불러오라는 것이고
where mb_1 = '남자' 는 조건을 주어서 조건에 맞는 것만 불러오도록 하는 것입니다. mb_1 필드값이 '남자' 인 게시물을 찾으라는 것이지요
order by 는 게시물을 불러왔을때 정렬해 주는 것이고
limit 는 불러오는 갯수를 정해주는 것입니다.
이제 쉽죠...??
데이터가 있을때 원하는 부분만 불러올때는 저런식으로 값을 넣어서...불러오면 됩니다.
예를 들어 회원레벨이 5에서 7인 회원데이터를 불러오고자 할때에는
select * from g4_member where mb_level >= '5' and mb_level <= '7' 이런식으로 조건을 넣어주면 됩니다.
보시면 알겠지만 mb_level >= '5' and mb_level <= '7' 조건부분에 두가지 내용이 들어가 있죠??
두개다 만족하는 게시물을 찾을때에는 and를 넣어주면 되고 둘중에 한조건만 만족을 주는 것을 찾을때에는
or를 넣어주면 됩니다. and와 or는 완전히 다른 의미입니다
select * from g4_member where mb_level >= '5' or mb_level <= '7'
이렇게 되면 회원레벨이 5이상인 회원을 다 불러오는 것이고 또 7이하인 회원을 다 불러오는 것이기 때문에 결국 회원전체를 불러오게 되는 조건이 되어 버립니다.
select * from g4_member where mb_level = '5' and mb_level = '7'
이렇게 넣어주면 회원레벨이 5이면서 7인 회원을 불러오라고 하는 것입니다.....말이 이상하죠??...결국 데이터가 아무것도 없게되죠?
근데? 한가지 이상하죠?
php구문에서는 == 가 같다는 의미였는데..db불러올때에는 = 가 한개가 들어갑니다...이유는...저도 몰라요..그렇게 씁니다...두개 들어가면 에러나요...ㅜㅜ
그리고
$row=sql_fetch_array($result); 부분이 있습니다.
$row가 값을 표현해주는 방식입니다
<?=$row[mb_1]?>
이렇게 불러와 주시면 됩니다.
$row_mb=sql_fetch_array($result); 이렇게 하면
<?=$row_mb[mb_1]?> 이렇게 되겠죠???
그리고
게시물의 갯수를 구할때에는
$sql_cnt = " select count(*) as cnt from g4_member where mb_1 = '남자'";
$row_cnt = sql_fetch($sql_cnt);
$total_count = $row_cnt[cnt];
$row_cnt = sql_fetch($sql_cnt);
$total_count = $row_cnt[cnt];
이렇게 처리하면 됩니다. g4_member 테이블에서 $mb_1 값이 남자인 게시물의 게수를 구하는 것이지요
$total_count 값이 그 값입니다.
order by mb_1 asc
는 데이터 정렬 방식인데 asc는 오름차순을 뜻하며, 일반적으로 생략합니다.
그리고 desc는 내림차순을 뜻하는 거구여. 생략할 수 없습니다.
order by mb_1 desc mb_1 값을 기준으로 내림차순으로 정렬하는 것이지요
보통 게시판 리스트에서는 게시물이 많이 때문에 for 문을 이용하여 불어옵니다.
<?php
$sql = " select * from g4_member where mb_1 = '남자' order by mb_id limit 10 ";
$result = sql_query($sql);
$result = sql_query($sql);
?>
<table width=100% cellpadding=0 cellspacing=0>
<tr>
<td class='biz_bbs_left'></td>
<td class='biz_bbs_bg' width=90><b>게시판아이디</td>
<td class='biz_bbs_bg'><b>게시판이름</td>
<td class='biz_bbs_bg' width=80><b>게시판스킨</td>
<td class='biz_bbs_bg' width=80><b>카테고리사용</td>
<td class='biz_bbs_bg' width=80><b>읽기권한</td>
<td class='biz_bbs_bg' width=80><b>쓰기권한</td>
<td class='biz_bbs_bg' width=50><b>삭제</td>
<td class='biz_bbs_bg' width=50><b>보기</td>
<td class='biz_bbs_right'></td>
</tr>
<?
for ($i=0; $row=sql_fetch_array($result); $i++) {
$list = $i%2;
<tr>
<td class='biz_bbs_left'></td>
<td class='biz_bbs_bg' width=90><b>게시판아이디</td>
<td class='biz_bbs_bg'><b>게시판이름</td>
<td class='biz_bbs_bg' width=80><b>게시판스킨</td>
<td class='biz_bbs_bg' width=80><b>카테고리사용</td>
<td class='biz_bbs_bg' width=80><b>읽기권한</td>
<td class='biz_bbs_bg' width=80><b>쓰기권한</td>
<td class='biz_bbs_bg' width=50><b>삭제</td>
<td class='biz_bbs_bg' width=50><b>보기</td>
<td class='biz_bbs_right'></td>
</tr>
<?
for ($i=0; $row=sql_fetch_array($result); $i++) {
$list = $i%2;
echo "
<tr>
<td height=35></td>
<td align=center><b>$row[bbs_id]</td>
<td align=center>$row[bbs_name]</td>
<td align=center>$row[bbs_skin]</td>
<td align=center>$checked</td>
<td align=center>".get_biz_level("$row[biz_id]", $row[bbs_read_level])."[$row[bbs_read_level]]</td>
<td align=center>".get_biz_level("$row[biz_id]", $row[bbs_write_level])."[$row[bbs_write_level]]</td>
<td align=center>$s_del</td>
<td align=center>$s_mod</td>
<td></td>
</tr>
<tr><td colspan='$colspan' class='biz_bbs_line2'></td></tr>";
}
<tr>
<td height=35></td>
<td align=center><b>$row[bbs_id]</td>
<td align=center>$row[bbs_name]</td>
<td align=center>$row[bbs_skin]</td>
<td align=center>$checked</td>
<td align=center>".get_biz_level("$row[biz_id]", $row[bbs_read_level])."[$row[bbs_read_level]]</td>
<td align=center>".get_biz_level("$row[biz_id]", $row[bbs_write_level])."[$row[bbs_write_level]]</td>
<td align=center>$s_del</td>
<td align=center>$s_mod</td>
<td></td>
</tr>
<tr><td colspan='$colspan' class='biz_bbs_line2'></td></tr>";
}
if ($i == 0)
echo "<tr><td colspan='$colspan' align=center height=150>자료가 없습니다.</td></tr>";
echo "<tr><td colspan='$colspan' align=center height=150>자료가 없습니다.</td></tr>";
echo "<tr><td colspan=$colspan class='biz_bbs_line2'></td></tr>
</table>";
</table>";
?>
이런식으로 해서 해당값을 가지는 게시물만 불러와서 보여주는 것입니다.
참 쉽죠????
댓글 6개
13년 전
좋은 정보를 이행하기 쉽게 올려주시는 분들이있어 초보자들이 편하겠네요.. ^^
13년 전
감사합니다
13년 전
$list = $i%2;
이부분의 설명이 있을줄 알았는데 ㅠㅠ 아쉽지만 잘보고 가요 ^^
이부분의 설명이 있을줄 알았는데 ㅠㅠ 아쉽지만 잘보고 가요 ^^
13년 전
감사합니다.ㅎ
takumi22
12년 전
잘봤습니다
10년 전
테이블에 특정 id값이 있는지 검사하는 구문을 찾고 있었는데..
이곳에서 힌트를 얻었습니다.
좋은정보 감사합니다^^
이곳에서 힌트를 얻었습니다.
좋은정보 감사합니다^^
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 7130 | 11년 전 | 2304 | ||
| 7129 | 11년 전 | 710 | ||
| 7128 |
senseme
|
11년 전 | 1301 | |
| 7127 | 11년 전 | 1175 | ||
| 7126 | 11년 전 | 824 | ||
| 7125 | 11년 전 | 2953 | ||
| 7124 | 11년 전 | 1428 | ||
| 7123 |
잘살아보자
|
11년 전 | 1291 | |
| 7122 |
잘살아보자
|
11년 전 | 689 | |
| 7121 |
잘살아보자
|
11년 전 | 3051 | |
| 7120 |
잘살아보자
|
11년 전 | 2918 | |
| 7119 |
잘살아보자
|
11년 전 | 732 | |
| 7118 |
잘살아보자
|
11년 전 | 3433 | |
| 7117 |
잘살아보자
|
11년 전 | 854 | |
| 7116 | 11년 전 | 746 | ||
| 7115 | 11년 전 | 1035 | ||
| 7114 | 11년 전 | 853 | ||
| 7113 | 11년 전 | 667 | ||
| 7112 | 11년 전 | 1087 | ||
| 7111 | 11년 전 | 1800 | ||
| 7110 | 11년 전 | 1035 | ||
| 7109 |
버섯먹은나
|
11년 전 | 813 | |
| 7108 | 11년 전 | 648 | ||
| 7107 | 11년 전 | 2413 | ||
| 7106 | 11년 전 | 1962 | ||
| 7105 | 11년 전 | 2485 | ||
| 7104 | 11년 전 | 1425 | ||
| 7103 |
|
11년 전 | 2712 | |
| 7102 | 11년 전 | 3122 | ||
| 7101 | 11년 전 | 4446 | ||
| 7100 | 11년 전 | 5794 | ||
| 7099 | 11년 전 | 2143 | ||
| 7098 | 11년 전 | 1726 | ||
| 7097 | 11년 전 | 1464 | ||
| 7096 | 11년 전 | 1132 | ||
| 7095 |
잘살아보자
|
11년 전 | 859 | |
| 7094 |
잘살아보자
|
11년 전 | 1063 | |
| 7093 |
잘살아보자
|
11년 전 | 940 | |
| 7092 |
잘살아보자
|
11년 전 | 1413 | |
| 7091 |
잘살아보자
|
11년 전 | 2212 | |
| 7090 |
잘살아보자
|
11년 전 | 895 | |
| 7089 | 11년 전 | 1070 | ||
| 7088 | 11년 전 | 1715 | ||
| 7087 | 11년 전 | 1412 | ||
| 7086 | 11년 전 | 1314 | ||
| 7085 |
|
11년 전 | 1239 | |
| 7084 | 11년 전 | 1157 | ||
| 7083 | 11년 전 | 3507 | ||
| 7082 | 11년 전 | 1155 | ||
| 7081 | 11년 전 | 1738 | ||
| 7080 | 11년 전 | 2026 | ||
| 7079 | 11년 전 | 1334 | ||
| 7078 | 11년 전 | 1305 | ||
| 7077 | 11년 전 | 1314 | ||
| 7076 | 11년 전 | 772 | ||
| 7075 | 11년 전 | 1155 | ||
| 7074 |
네이비칼라
|
11년 전 | 1510 | |
| 7073 | 11년 전 | 1480 | ||
| 7072 |
|
11년 전 | 836 | |
| 7071 | 11년 전 | 1211 | ||
| 7070 | 11년 전 | 936 | ||
| 7069 | 11년 전 | 1710 | ||
| 7068 | 11년 전 | 1367 | ||
| 7067 |
TPSint
|
11년 전 | 750 | |
| 7066 | 11년 전 | 2155 | ||
| 7065 | 11년 전 | 6653 | ||
| 7064 | 11년 전 | 1296 | ||
| 7063 | 11년 전 | 1142 | ||
| 7062 | 11년 전 | 1081 | ||
| 7061 | 11년 전 | 920 | ||
| 7060 | 11년 전 | 1476 | ||
| 7059 | 11년 전 | 886 | ||
| 7058 |
EngineMan
|
11년 전 | 3408 | |
| 7057 | 11년 전 | 1251 | ||
| 7056 | 11년 전 | 1641 | ||
| 7055 | 11년 전 | 1021 | ||
| 7054 | 11년 전 | 2660 | ||
| 7053 |
네이비칼라
|
11년 전 | 1290 | |
| 7052 | 11년 전 | 2584 | ||
| 7051 | 11년 전 | 1943 | ||
| 7050 | 11년 전 | 2457 | ||
| 7049 | 11년 전 | 1414 | ||
| 7048 | 11년 전 | 2540 | ||
| 7047 | 11년 전 | 1363 | ||
| 7046 | 11년 전 | 1042 | ||
| 7045 | 11년 전 | 1069 | ||
| 7044 | 11년 전 | 5441 | ||
| 7043 | 11년 전 | 1234 | ||
| 7042 | 11년 전 | 793 | ||
| 7041 |
열라뽕똬이
|
11년 전 | 763 | |
| 7040 | 11년 전 | 1118 | ||
| 7039 | 11년 전 | 1470 | ||
| 7038 | 11년 전 | 1882 | ||
| 7037 | 11년 전 | 2182 | ||
| 7036 | 11년 전 | 1089 | ||
| 7035 | 11년 전 | 1411 | ||
| 7034 | 11년 전 | 1364 | ||
| 7033 |
열라뽕똬이
|
11년 전 | 1001 | |
| 7032 | 11년 전 | 756 | ||
| 7031 | 11년 전 | 2188 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기