PHP pagination class code_PHP tutorial
PHP paging code
Today I would like to share with you a piece of code. This is a PHP paging code://Create paging class
class Page {
private $_all_num;
private $_page_size; //Display several pieces of data per page
private $_page;
private $_all_page;
private $_url;
private $_limit;
private $_sign;
//Interceptor
Public function __get($_key) {
return $this->$_key;
}
Public function __construct($_all_num,$_page_size) {
$this->_all_num = $_all_num;
$this->_page_size = $_page_size;
$this->_all_page = ceil($this->_all_num / $this->_page_size);
$this->_page = $this->setPage();
$this->_url = $this->setUrl();
$this->_limit = 'LIMIT '.($this->_page * $this->_page_size - $this->_page_size).','.$this->_page_size;
}
//Get the current page number
Private function setPage() {
If (!empty($_GET['page']) && $_GET['page'] > 0) {
If ($_GET['page'] <= $this->_all_page) {
return ceil($_GET['page']);
} else {
return $this->_all_page;
}
} else {
return 1;
}
}
//Get address
Private function setUrl() {
$_url = $_SERVER['REQUEST_URI']; if (!empty($_url)) {
$_par_url = parse_url($_url);
if (isset($_par_url['query'])) {
parse_str($_par_url['query'],$_arr);
if (isset($_arr['page'])) {
unset($_arr['page']);
}
if (!empty($_arr)) {
$_http = http_build_query($_arr);
$_end_url = $_par_url['path'] . '?' . $_http;
$this->_sign = '&';
} else {
$_end_url = $_par_url['path'];
$this->_sign = '?';
}
} else {
$_end_url = $_par_url['path'];
$this->_sign = '?';
}
}
return $_end_url;
}
//显示分页
public function numPage() {
$_num = '';
//前面
for ($i=1; $i<$this->_page; $i ) {
if ($i<1) continue;
$_num .= "".$i."";
}
//自己
$_num .= "".$this->_page."";
//后面
for ($i=$this->_page 1; $i<=$this->_all_page; $i ) {
if ($i>$this->_all_page) continue;
$_num .= "".$i."";
}
return $_num;
}
}
?>
大家可以将上面一段代码复制到文本编辑器中这样看的会舒服一点!下面讲一下具体步骤:
1. Create a paging class: class Page {};
2. Get the number of data that needs to be displayed and record it in the Page class. The number of data here is obtained through data. I won’t go into details! Then set the number of data displayed on each page!
3. Get the current page address!
The general meaning of this code is that when your address is followed by ?, then use &page= when clicking on paging; when there is no suffix or only ?page= after your address, then when clicking on paging, use ?page=
4. Get the current page number
The page number here must be an integer, so you can use the ceil function, and pay attention to the user's malicious modification of the address!
4. Make paging elements. Here we just make a simple digital paging. For more complex ones with better user experience, you can expand by yourself!
5. Set the number of queries in the database, which is LIMIT; for example: For example, I now have 10 pieces of data, and set each page to display 5 pieces of data, then
When the user clicks on the first page, LIMIT 0,5
When the user clicks on the second page, LIMIT 5,5
6. Calling of this code:
$_page = new Page(10,5);
$_page->page();
The 10 above is the total number of data, and 5 is the number of data you want to display on each page. $_page->page() is the paging of the page. Just echo it out. Note that you have to add it to the Page class. The $_limit call is put into the database query statement, so that basic php paging comes out!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Apple's latest releases of iOS18, iPadOS18 and macOS Sequoia systems have added an important feature to the Photos application, designed to help users easily recover photos and videos lost or damaged due to various reasons. The new feature introduces an album called "Recovered" in the Tools section of the Photos app that will automatically appear when a user has pictures or videos on their device that are not part of their photo library. The emergence of the "Recovered" album provides a solution for photos and videos lost due to database corruption, the camera application not saving to the photo library correctly, or a third-party application managing the photo library. Users only need a few simple steps

How to use MySQLi to establish a database connection in PHP: Include MySQLi extension (require_once) Create connection function (functionconnect_to_db) Call connection function ($conn=connect_to_db()) Execute query ($result=$conn->query()) Close connection ( $conn->close())

To handle database connection errors in PHP, you can use the following steps: Use mysqli_connect_errno() to obtain the error code. Use mysqli_connect_error() to get the error message. By capturing and logging these error messages, database connection issues can be easily identified and resolved, ensuring the smooth running of your application.

The advantages of C++ in web development include speed, performance, and low-level access, while limitations include a steep learning curve and memory management requirements. When choosing a web development language, developers should consider the advantages and limitations of C++ based on application needs.

Using the database callback function in Golang can achieve: executing custom code after the specified database operation is completed. Add custom behavior through separate functions without writing additional code. Callback functions are available for insert, update, delete, and query operations. You must use the sql.Exec, sql.QueryRow, or sql.Query function to use the callback function.

C++ has great potential in mobile development because of: a huge developer community and rich learning resources; efficient memory management and low-level control, bringing excellent performance; WORA model, which can be written once and run across Android, iOS, and Windows; widely Used for game engine development, low latency and resource management functions meet high-performance game requirements.

JSON data can be saved into a MySQL database by using the gjson library or the json.Unmarshal function. The gjson library provides convenience methods to parse JSON fields, and the json.Unmarshal function requires a target type pointer to unmarshal JSON data. Both methods require preparing SQL statements and performing insert operations to persist the data into the database.

To avoid PHP database connection errors, follow best practices: check for connection errors and match variable names with credentials. Use secure storage or environment variables to avoid hardcoding credentials. Close the connection after use to prevent SQL injection and use prepared statements or bound parameters.
