programing

데이터 테이블 페이지를 사용하려면 어떻게 해야 합니까?

sourcejob 2023. 8. 2. 09:01
반응형

데이터 테이블 페이지를 사용하려면 어떻게 해야 합니까?

이제 전체 데이터를 불러와서 데이터 테이블을 사용하여 보기로 표현합니다.그러나 데이터가 많으면 렌더링 속도가 느립니다.개선하기 위해 우리는 무엇을 해야 합니까?

이 자료상의 코드로.

<script>
        $(function() {
          'use strict';

          $('#datatable1').DataTable({

            responsive: true,
            ordering: false,
            language: {
              searchPlaceholder: 'Search...',
              sSearch: '',
              lengthMenu: '_MENU_ items/page',
            }
          });
 </script>

이 SQL 코드 및 테이블 보기 코드에서

$sql = "SELECT * FROM hospital_payment_data  where  store_mbrno =  '1' ";

if($result = mysqli_query($link, $sql)){               

        if(mysqli_num_rows($result) > 0){


            // echo "<table id='datatable1' class='table display responsive nowrap' style='width: 100%;'>";
            echo "<table id='datatable1' class = table style = 'width: 100%; font-size:12.3px; font-family:nanum; background-color:#01b3ed;'>";
            echo "<thead >";
            echo "<tr>";
            echo "<th>No</th>";
            echo "<th>chart_num</th>";                               
            echo "</tr>";
            echo "</thead>";

            echo "<tbody>";
        while($row = mysqli_fetch_array($result)){
            echo "<tr>";
            echo "<td>" . $row['id'] . "</td>";
            echo "<td>" . $row['chart_num'] . "</td>";             
           }

            echo "</tbody>";                            
            echo "</table>";
            // Free result set
            mysqli_free_result($result);       

        } 

datatable과 php 및 mariadb를 사용하여 페이지를 작성하려면 어떻게 해야 합니까?

다음과 같이 결과를 제한합니다.

    $sql = "SELECT * FROM hospital_payment_data  
            WHERE store_mbrno =  '1'
            LIMIT 100 OFFSET ".$offset_var;

이렇게 하면 페이지당 100개의 결과를 반환할 수 있습니다.$offset_var 변수는 GET 변수처럼 URL을 통해 전달될 수 있습니다(물론 SQL 쿼리 이전에).

    $offset_var = $_GET['offset']??0;

페이지의 하이퍼링크를 예로 들 수 있습니다.

물론 이 변수를 검사하는 것을 잊지 말아야 합니다.다음과 같은 것:

    $offset_var = (int)$offset_var;
    if($offset_var<0) $offset_var=0;

또한 URL에 큰 오프셋 번호가 있는 페이지를 누군가가 누를 경우(이 "빈" 페이지가 여전히 예쁘게 표시되는지 확인)에 대해서도 생각해 보십시오.

언급URL : https://stackoverflow.com/questions/62163734/how-can-i-use-the-data-table-pagination

반응형