• Downloading from our site will require you to have a paid membership. Upgrade to a Premium Membership from 10$ a month today!

    Dont forget read our Rules! Also anyone caught Sharing this content will be banned. By using this site you are agreeing to our rules so read them. Saying I did not know is simply not an excuse! You have been warned.

Hướng dẫn tạo code phân trang trong PHP cực đơn giản + Trả Lời Ðề Tài

haih544

New Member
Mình viết bài hay hy vọng giúp dc các bạn mới nhập môn PHP có thể làm dc một cái phân trang. Vì mình thấy trên google tìm thì chỉ thấy 2-3 giống nhau. Mà tất cả thì rất dài , Toàn là code ko có chú thích....

Nên giờ mình viết code này. tặng các bạn...........

giờ thì........hix. tạm biệt SVIT em nghĩ online. ở nhà học bài, sắp thi học kỳ roài

Đơn giản nhất của Phân Trang là cái này.
SELECT * FROM `your_table` LIMIT 5, 5 => Chọn bài thứ 6,7,8,9,10 từ bài thứ 5
VÌ tình linh hoạt . ( user tự chọn trang nên ta phải thay đổi, tạo tính linh hoạt cho code. )


Code thì nhiu đây thôi . Các bạn đọc có thể hiểu dc. Nếu chưa hiểu thì xem đoạn code có chú thích ở dưới nhé


Dành cho các pác đã rành PHP & MySQL
PHP:
<?php
require("./config.php");

// Nếu chưa chọn trang để xem. thì ta mặc định người dùng xem đang số 0 .
if ( !$_GET['page'] )
{
    $page = 0 ;
}

$sodu_lieu = mysql_num_rows(mysql_query("SELECT * FROM `data` ") ) or die(mysql_error());
*/
$sotrang = $sodu_lieu/$baitren_mottrang;

$result =mysql_query("SELECT * FROM `data` LIMIT {$page}*{$baitren_mottrang},{$baitren_mottrang} ") or die(mysql_error());

while ( $info = mysql_fetch_array($result )) 
{
    echo <<<EOT
    $info['tenbai_viet']
    <br />
    $info['noidung']
EOT;
}

for ( $page = 0; $page <= $sotrang; $page ++ )
{
echo "<a href='index.php?page={$page}'>{$page}</a>";
}
Code có chú thích, dành cho các pác mới nhập môn
PHP:
<?php
$baitren_mottrang = 10; // Tổng số tin hiện trên 1 trang

// Nếu chưa chọn trang để xem. thì ta mặc định người dùng xem đang số 0 .  
if ( !$_GET['page'] )
{
    $page = 0 ;
}
// Đầu tiên bạn phải lấy số dữ liệu để xem, trong data bạn có bao nhiêu bài post
$sodu_lieu = mysql_num_rows(mysql_query("SELECT * FROM `data` ") ) or die(mysql_error());

//Tính số trang. Lấy số bài viết có được, chia cho số bài viết trên 1 trang, ta được số trang 
/* Ví dụ ta có 
20 bài viết trong data. 
mỗi trang hiển thị 10 bài
=> Chúng ta có 20/10 = 2 trang 
*/
$sotrang = $sodu_lieu/$baitren_mottrang;

// Bắt đầu lấy dữ liệu 
// Ta dùng hàm LIMIT x,y 
// Ta muốn chọn 10 bài, từ bài 20 thì ta để LIMIT 20,10 :D 

$result =mysql_query("SELECT * FROM `data`ORDER BY `id` DESC  LIMIT {$page}*{$baitren_mottrang},{$baitren_mottrang} ") or die(mysql_error()); 
/* Bạn xem tại sao là {$page}*{$baitren_mottrang} . Lấy số id của trang hiện tại nhân với số bài viết cho 
phép trên 1 trang
Ví dụ ta đang ở trang số 0. thì ta lấy từ bài thứ 0 trở đi.
ở trang số 1 thì lấy bài thứ 10 trở đi... Vì mỗi trang ta cho nó hiện chỉ 10 bài thôi :D
*/

// Xuất dữ liệu này 

while ( $info = mysql_fetch_array($result ))  
{
    echo <<<EOT
    $info['tenbai_viet']
    <br />
    $info['noidung']
EOT;
}

// Bây giờ tạo nút bấm để chuyển trang. 
// Hồi nảy ta tính dc cái $sotrang rùi á
// Bây giờ ta dùng hàm for để tạo vòng lập. hiện từ trang số 0 đến <= $sotrang
for ( $page = 0; $page <= $sotrang; $page ++ )
{
echo "<a href='index.php?page={$page}'>{$page}</a>";
}
 

Facebook Comments

Similar threads

New posts New threads New resources

Back
Top