리스트 번호를 번호순으로 하게 도와주세요 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

리스트 번호를 번호순으로 하게 도와주세요 정보

리스트 번호를 번호순으로 하게 도와주세요

본문

번호를 번호순으로 뿌리려고 시도하는 도중에 페이지로 넘기면 정렬이 제대로 안되더군요 도와주세요

제가 하고자하는게

번호를

5
4
3
2
1 이런식으로 뿌려주는데

총 레코드의 수가 30개이고

총 페이지수가 3이라고 가정시

1페이지의 번호는 $top = mysql_affected_row()를 이용하여 while 문에서 $i의 초기값을 0으로 지정하고 처음 번호를 찍을때 $top - $i 이런식으로 뿌렸는데요 이렇게 하니까 1페이지에서는 제대로 되는데 2페이지부터 1페이지랑 똑같이 번호가 출력되더라구요 이 방식이 잘못 된거 같아서 while문으로 할 시에 번호를 페이지가 넘어가도 역순으로 뿌려주는 방법좀 알려주세요 ㅠㅠ


///////////목록출력시작/////////

//변수초기화
$ipp=10;// 한페이지에 표시될 레코드 수 설정
$ten=5; // 한 화면에 표시될 페이지 번호의 수
$page = $_GET[page];
//검색어 정의
if ($keyword!="")
{
$sql_where = " where $keyfield like '%$keyword%' ";
}//if

//전체 글수 계산
$total_sql = "select count(*) from board3 ";
$total_sql .= $sql_where;//검색조건
$res = mysql_query($total_sql);
$total_count = mysql_result($res,0,0);
//if ($res) $rs = mysql_fetch_row($res);

//$total_count = $rs[0];//검색된 글수
$totpage = ceil($total_count/$ipp);//총 페이지수 연산

$page = min(max(1,$page),$totpage); // 1< 출력할 페이지 번호 <전체 페이지수
//현재페이지의 시작레코드를 찾습니다.
$startrow = ($page - 1) * $ipp;

//현재 페이지에 출력할 레코드 선택질의
$list_sql = "select * from board3 ";
$list_sql .=  $sql_where;//검색조건
$list_sql .= " order by groupnum desc, stepnum asc";//정렬조건
$list_sql .= " limit $startrow, $ipp ";//한 페이지에 출력할 글수 제한

$res = mysql_query($list_sql);

if($page==1)
{
$sql = "select * from board3";
$re = mysql_query($sql);

$top = mysql_affected_rows(); // 중간번호 삭제시 숫자가 비는것을 방지, 쿼리의 행 개수
}
else
{
$top = mysql_affected_rows(); // 중간번호 삭제시 숫자가 비는것을 방지, 쿼리의 행 개수
}

?>

<table width="650" height="24" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td>&nbsp;</td>
    <td align="right">Total <? echo number_format($totpage);?> pages / <? echo number_format($total_count);?>
      items</td>
  </tr>
</table>

<table width="650" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr align="center" bgcolor="#EBE8D8">
<td width="50" height="24">번호</td>
    <td width="40" align=left bgcolor="#EBE8D8">종류</td>
    <td>제목</td>
    <td width="50" bgcolor="#EBE8D8">작성자</td>
    <td width="80">등록일</td>
    <td width="50">조회</td>
  </tr>
 <?
if ($res)
{
$i=0;
while ($rs = mysql_fetch_array($res))
{


?>
<tr bgcolor="<?
  if ($rowid==$rs[rowid])
{
  echo "#e0e0e0";
}
else
{
  if ($i%2==0)
echo "#f0f0f0";
else
echo "#eaeaea";
}
  ?>"> <!--<td height="24" align="center"><? echo $rs[rowid];?></td> 글의 등록번호-->
<td height="24" align="center"><? echo $top-$i?></td> <!-- 중간번호 삭제시 숫자가 비는 것을 방지 -->
<td align="left">
<? if ($rs[assin]=="긴급") {?>
<? echo $rs[assin];?>
<? } if($rs[assin]=="일반") {?>
<? echo $rs[assin];}?>
</td>
<td style="cursor:hand;" onClick="self.location='list.php?rowid=<? echo $rs[rowid];?>&rowid2=<? echo $rs_user[rowid];?>';">
<?
for ($d=0;$d<$rs[depth];$d++) echo "&nbsp;&nbsp;";
if ($rs[stepnum]>0) echo '<img src="img/icon_sub.gif" align="absmiddle">';
?>
<? echo str_limit($rs[subject],50,"...");?></td>
<td align="center"><? echo str_limit($rs[name],8,"");?></td>
<td align="center"><? echo substr($rs[input_date],0,10);?></td>
<td align="center"><? echo number_format($rs[access]);?></td>
</tr>
<?
$i++;
}//while
}//if

$block = ceil($page / $ten); // 현재 화면에 표시할 링크 블록 번호
$startpage = ($block - 1) * $ten + 1; // 첫번째 링크 번호
$endpage = min($startpage + $ten - 1, $totpage); // 마지막 링크번호

?>

</table>
<table width="650" height="40" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#EBE8D8" style="border:0px #333333 solid;border-bottom-width:3px;">
  <tr>
    <td>
        <table border="0" cellpadding="0" cellspacing="0">
          <tr valign="bottom">
            <td style="color:#333333;font-size:12px;"><span style="font-weight:bold;">Go
              to Page:</span> &nbsp;
              <? if ($startpage>1) { ?>
              <a style="cursor:hand;color:#333333;font-weight:;font-size:12px;" onClick="search_form.startpage.value='1'; search_form.page.value='1';search_form.submit();">◀</a>
              <a style="cursor:hand;color:#333333;font-weight:;font-size:12px;" onClick="search_form.startpage.value='<? echo $page-$ten;?>';search_form.page.value='<? echo $page-$ten;?>';search_form.submit();">Prev</a>
              <? }//if ?>
              <?

for ($j=$startpage;$j<=$endpage;$j++) {

if ($page==$j)
{
echo "<b>[$j]</b>";
}
else
{
echo "<a href=\"javascript:search_form.page.value='$j';search_form.submit();\">";
echo "[$j]";
echo "</a>";
}
}//for
?>
              <? if ($endpage<$totpage) { ?>
              <a style="cursor:hand;color:#333333;font-weight:;font-size:12px;" onClick="search_form.startpage.value='<? echo $page+$ten;?>'; search_form.page.value='<? echo $page+$ten;?>';search_form.submit();">Next</a>
              <a style="cursor:hand;color:#333333;font-weight:;font-size:12px;" onClick="search_form.startpage.value='<? echo $totpage;?>'; search_form.page.value='<? echo $totpage;?>';search_form.submit();">▶</a>
              <? }//if ?>
              &nbsp;</td>
          </tr>
        </table>
    </td>
    <td align="right">
<form action="list.php" method="get" name="search_form" id="search_form" style="margin:0px;">
        <table border="0" cellspacing="0" cellpadding="0">
          <tr><input type="hidden" name="rowid2" value="<? echo $rs_user[rowid]; ?>">
            <td> <input name="page" type="hidden" id="page">
<input name="startpage" type="hidden" id="startpage">
              <select name="keyfield" id="keyfield">
                <option value="subject" <? if($keyfield=="subject") echo "selected";?>>제목</option>
                <option value="assin" <? if($keyfield=="assin") echo "selected";?>>종류</option>
<option value="name" <? if($keyfield=="name") echo "selected";?>>이름</option>
              </select></td>
            <td><input name="keyword" type="text" id="keyword" value="<? echo $keyword;?>" size="12">
            </td>
            <td>
<input type="submit" name="Submit" value="Search"></td>
          </tr>
        </table>
        </form></td>
  • 복사

댓글 전체

http://sir.co.kr/bbs/board.php?bo_table=g4_qa&wr_id=117519&sca=&sfl=wr_subject%7C%7Cwr_content&stx=number_format&sop=and&spt=-55904&page=9

윗글 참조하세요..

전체게시판 적용은 bbs/list.php 수정하시고..

스킨만 수정하시려면 다른 방법을 찾아보세요.
© SIRSOFT
현재 페이지 제일 처음으로