PHP MYSQL PAGING РЕЗУЛЬТАТЫ

Я хотел создать php-пейджинг с базовой страницей "Страница 1", и ссылки на страницы должны начинаться с "Страница 2", оставляя ссылку "Страница 1" как обычный текст, а не как ссылку, а когда я на "Второй странице", то "" Страница 1 "текст становится ссылкой, которая ведет к" первой странице ".

Нравится: когда на базовой странице. /orders.php

<div id="page-links">
<b>1</b>, 
<a href="/orders.php?pagenum=2">2</a>, 
<a href="/orders.php?pagenum=3">3</a>
</div>

Когда на 2-й странице. /orders.php?pagenum=2

<div id="page-links">
<a href="/orders.php?pagenum=1">1</a>, 
<b>2</b>, 
<a href="/orders.php?pagenum=3">3</a>
</div>

У меня есть эта страница php:

   <table>
      <?php
      $orders_check_raw = "select * from " . $orders . " where customers_id = '" . (int) $user_id . "'";
      $orders_check_query = mysql_query( $wpdb->prepare( $orders_check_raw ) );
      while ($orders_check = mysql_fetch_array( $orders_check_query )) {
        $blog_details = get_blog_details( $orders_check['blog_id'] );
        ?>

        <tr>
          <th class="check-column"><input type="checkbox" name="order[]" value=""></th>
          <td><?php echo str_pad( $orders_check['orders_id'], 7, '0', STR_PAD_LEFT ) . '<span style="display:none;">' . ltrim( str_pad( $orders_check['orders_id'], 7, '0', STR_PAD_LEFT ), '0' ) . '</span>'; ?></td>
          <td><?php echo $orders_check['payment_method']; ?></td>
          <td><?php echo date_short( $orders_check['date_purchased'] ); ?></td>
          <td><?php echo status_name( $orders_check['orders_status'] ); ?></td>
        </tr>
      <?php } ?>
    </tbody>
    </table>

Спасибо.

3 ответа

Решение

Вы можете написать php-нумерацию самостоятельно, это займет немного усилий.

ИЛИ ЖЕ

Проверьте этот сайт. В нем есть руководство о том, как создать нумерацию страниц с использованием PHP и MySQL? Вы найдете это полезным.

Это настраивается, и вот несколько настроек, которые можно кратко изложить:

  1. код для подключения к вашей БД
  2. Ваше имя таблицы.
  3. количество соседних страниц, которые будут показаны на каждой стороне.
  4. Количество элементов для отображения на странице.

Я думаю, что вы можете использовать $_GET и оператор if...else для достижения желаемых результатов. Для if..else http://www.w3schools.com/php/php_if_else.asp и для GET http://php.net/manual/en/reserved.variables.get.php.

if($_GET['pagenum']==1){
   echo '<div id="page-links"><b>1</b>, <a href="/orders.php?pagenum=2">2</a>, <a href="/orders.php?pagenum=3">3</a></div>';
}
else if (....) {
   ...
}
else (...) {
   ...
}

В идеале, вы должны определить константу для отображения записей на странице. Исходя из этого, вы должны установить смещение для вашего запроса к базе данных.

Например:

define('ENTRIES_PER_PAGE', 15);

$orders_check_raw = "SELECT * FROM " . $orders . " WHERE customers_id = '" . (int) $user_id . "'";

$offset = $_GET['pagenum'] * ENTRIES_PER_PAGE;
$orders_check_raw .= "LIMIT " . ENTRIES_PER_PAGE . ", " . $offset;

$orders_check_query = mysql_query( $wpdb->prepare( $orders_check_raw ) );

Надеюсь это поможет.

Другие вопросы по тегам