2014-01-06 2 views
0

PHP를 사용하여 페이지 매김 페이지가 있습니다. 그리고 내 테이블에 $i을 추가하여 테이블에 번호를 지정합니다. 페이지 당 레코드 수를 10으로 설정했습니다. 문제는 다음 또는 페이지 2를 클릭하면 while 루프의 숫자가 1-10으로 돌아가는 것입니다. 어떻게 테이블 번호 붙이기를 계속할 수 있습니까?while 루프의 번호 매기기

나는 166 개의 레코드가 있습니다. 기록에는 1-10 페이지 1과 11-20 페이지 2가 표시되어야합니다.

<?php 
    echo'<table> 
     <tr> 
      <td></td> 
     </tr> '; 
    $i = 1; 
    while($row = $result1->fetch_assoc()) { 
    echo'<tr> 
      <td>'.$i++.'</td> 
     </tr>'; 
    } 
    echo'</table>'; 
?> 

내 매김의 몇몇 세부 사항은

$id = $mysqli->real_escape_string($_GET["q"]); 
$id2 = $mysqli->real_escape_string($_GET["id"]); 
if (isset($_GET['id'])) { 
    $id2 = preg_replace('#[^0-9]#i', '', $_GET['id']); 
} else { 
    $id2 = 1; 
} 
$itemsPerPage = 10; 
$lastPage = ceil($nr/$itemsPerPage); 
if ($id2 < 1) { 
    $id2 = 1; 
} else if ($id2 > $lastPage) { 
    $id2 = $lastPage; 
} 
+0

를 추가 할 수 있습니다. –

답변

1

당신은 당신의 approprite로 $_GET['page'] 교체, 페이지 번호를 추가 할 필요가있다. 페이지 번호와 가정 yourpage.php?page=2

if(isset($_GET['page'])){ 
    $i = (($_GET['page']-1) * 10)+1; // You current page number x No.of records + 1 // 2page * 10 reocrds per page + 1 = 21; 
}else{ 
    $i = 1; 
} 
+0

동일한 출력 – surname

+0

ur 쿼리 문자열 parametername이 –

+0

인데 왜 다음 페이지를 클릭하면 21시에 시작하나요? – surname

1

$i 값.

$i = $page_no * $page_size + 1; 
+0

을 확인하십시오. @chang 내 질문을 업데이트했습니다. 그것을 확인하십시오 – surname

0

while 전에 $i = 1;를 제거하고 루프

while($row = $result1->fetch_assoc()) 
{ 
    echo'<tr> 
    <td>'.$i++.'</td> /* increment i here will be hust fine */ 
    </tr>'; 
} 

내부에이 방법을 배치, 루프 실행이 i이 반복 될 때마다 정확하게는 그에게 가정 카운트 호출!

+0

결과는 공백에서 1-9로 시작합니다 – surname

0

당신은 단순히 우선은이 그렇게 페이지 변수를 설정하고있다 불완전 code.how 제공 한 페이지 매기기에 전체 코드를 제공하십시오 페이지 번호와 페이지 크기를 곱 현재 수

$totalpagerows = 10;  
    if($_GET['page']!=""){ 
     if($_GET['page']>1){ 
     $pagenew =$_GET['page']-1; 
     } 
     else{ 
      pagenew =1; 
     } 

     $i = ($pagenew * $totalpagerows)+1;  
    }else{ 
     $i = 1; 
    } 
+0

다음 페이지를 클릭 할 때 21시에 시작하는 이유는 무엇입니까? – surname

+0

@surname 내 업데이트 된 답변 확인 –