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? Вы найдете это полезным.
Это настраивается, и вот несколько настроек, которые можно кратко изложить:
- код для подключения к вашей БД
- Ваше имя таблицы.
- количество соседних страниц, которые будут показаны на каждой стороне.
- Количество элементов для отображения на странице.
Я думаю, что вы можете использовать $_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 ) );
Надеюсь это поможет.