계층형 게시판 - 4. 리스트
list.php
<?
include "dbconn.php";
$total_sql = "SELECT count(*) FROM board ";
$total_res = mysql_query($total_sql);
$total = mysql_result($total_res,0,0);
$pagenum = $_GET[pagenum];
$page = 20; //페이지 당 게시물 수
$pagesu = ceil($total / $page); // 전체 페이지 개수
$start = $page * $pagenum; //시작위치
$number = $total - ($pagenum * $page); // 게시물 번호
$sql = "SELECT *,FROM_UNIXTIME(wdate) AS DATE FROM board ORDER BY notice DESC, family, orderby LIMIT $start, $page";
$res = mysql_query($sql);
$notice_sql = "SELECT count(idx) FROM board WHERE notice = '1'";
$notice_res = mysql_query($notice_sql);
$notice = mysql_result($notice_res,0,0);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="utf8">
<head>
<title> </title>
</head>
<body >
<table align='center' width="500" border="1">
<tr>
<td>번호</td>
<td>제목</td>
<td>글쓴이</td>
<td>날짜</td>
<td>조회수</td>
</tr>
<?
/************************************게 시 글 ***********************************************/
while($list = mysql_fetch_array($res)){
$repl_sql = mysql_query("SELECT count(*) FROM replay WHERE bbs_no='".$list[idx]."'");
$repl = mysql_result($repl_sql,0,0);
if($list[notice] == 1){
$header = "[알림]";
}else if($list[header] == 2){
$header = "[유머]";
}else if($list[header] == 3){
$header = "[기타]";
}else{
$header ="";
} //머릿말
if($list[step]){
$re = "re :";
}else{
$re = "";
} //답변글 일시 앞에 re 글자 표시
$blank = str_repeat(" ", $list[step]); //단계에 따른 공백표시
?>
<tr>
<td>
<?if($list[notice]=='1'){
echo "공지";
}else{
echo $number;
}//게시판 번호
?>
</td>
<td><a href = '/view.php?idx=<?=$list[idx]?>'><?=$blank?><?=$re?><?=$header?> <?=$list[title]?></a>
<?
if($repl == '0'){
}else {
echo "[".$repl."]";
} //덧글갯수
?>
</td>
<td><?=$list[name]?></td>
<td><?=$list[date]?></td>
<td><?=$list[hit]?></td>
</tr>
<?
$number--;
}
/**************************************************************************************************************************/
?>
<tr>
<td colspan='4' align='center'>
<?
$pagegroup = 5; //페이지 그룹 당 페이지 수
$pageend = $pagestart + $pagegroup; // 페이지 그룹의 마지막 페이지
$pagegroupnum = ceil(($pagenum + 1) / $pagegroup); // 현재의 페이지 그룹
$pagestart = ($pagegroupnum - 1) * $pagegroup + 1; // 페이지 그룹의 첫 페이지
$pageend = $pagestart + $pagegroup - 1; //페이지 그룹의 마지막 페이지
$prevgroup = $pagegroupnum - 1; //이전 그룹
$prevstart = ($prevgroup - 1) * $pagegroup; // 이젠 페이지 그룹의 첫 페이지
echo $pagegroupnum.$pagenum;
if($pagegroupnum != 1){
//이전 페이지 이동
echo "[<a href = '/list.php?pageum=$prevstart'>◀</a>]";
}
for ($i = $pagestart; $i<=$pageend; $i++)
{
if($i > $pagesu) {break;}
$j = $i - 1;
echo "[<a href='/list.php?pagenum=$j'>$i</a></b>]";
}
$nextgroup = $pagegroupnum + 1;
$nextstart = ($nextgroup - 1) * $pagegroup;
if($pagesu > ($nextstart + 1))
{ // 다음 페이지 이동
echo "[<a href = '/list.php?pageum=$nextstart'>▶</a>]";
}
?>
</td>
<td>
<input type="button" value="글쓰기" onclick="location.href='/write.php?type=write'">
</td>
</tr>
</table>
</body>
</html>
'Coding > PHP' 카테고리의 다른 글
하이라트 테스트 (0) | 2015.01.30 |
---|---|
[PHP] 계층형 게시판 - 5. 글보기 (0) | 2015.01.30 |
[PHP] 계층형 게시판 - 3. 글쓰기 (0) | 2015.01.30 |
[PHP] 계층형 게시판 - 2. 덧글 테이블 구조 (0) | 2015.01.30 |
[PHP] 계층형 게시판 - 1.테이블 구조 (0) | 2015.01.30 |