-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathpagination.php
51 lines (48 loc) · 1.78 KB
/
pagination.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?php
if(empty($_GET['page'])){
$requested_page = 1;
}
else{
$requested_page = $_GET['page'];
}
$total_number_of_pages = ceil($total_results / 10);
if ($total_number_of_pages <= 10){
$highest_page = $total_number_of_pages;
$lowest_page = 1;
}
else if($total_number_of_pages >= 10){
$lowest_page = $requested_page - 4;
$highest_page = $requested_page + 5;
if($lowest_page < 1){
$highest_page = $highest_page + (1 - $lowest_page);
$lowest_page = 1;
}
elseif($highest_page > $total_number_of_pages){
$lowest_page = $lowest_page - ($highest_page - $total_number_of_pages);
$highest_page = $total_number_of_pages;
}
}
if($requested_page > 1){
echo '<a href="index.php?trans_query=' . htmlspecialchars(urlencode($trans_query_yandex)) . '&page=' . ($requested_page - 1) .
'&your_language=' . $_GET['your_language'] . '&search_in=' . $_GET['search_in'] . '&query=' .
htmlspecialchars(urlencode($_GET['query'])) . '">' . htmlspecialchars('<<') .
'Previous Page</a> ·';
}
$i = $lowest_page;
while($i <= $highest_page){
if($i == $requested_page){
echo $i . ' ·';
}
else{
echo '<a href="index.php?trans_query=' . htmlspecialchars(urlencode($trans_query_yandex)) . '&page=' .
$i . '&your_language=' . $_GET['your_language'] . '&search_in=' . $_GET['search_in'] .
'&query=' . htmlspecialchars(urlencode($_GET['query'])) . '">' . $i . '</a> · ';
}
$i++;
}
if($requested_page < $total_number_of_pages){
echo '<a href="index.php?trans_query=' . htmlspecialchars(urlencode($trans_query_yandex)) . '&page=' .
($requested_page + 1) . '&your_language=' . $_GET['your_language'] . '&search_in=' . $_GET['search_in'] .
'&query=' . htmlspecialchars(urlencode($_GET['query'])) . '">' . 'Next Page ' . htmlspecialchars('>>');
}
?>