ویرگول
ورودثبت نام
taymaz
taymazتوسعه دهنده وب
taymaz
taymaz
خواندن ۱ دقیقه·۵ سال پیش

ساخت pagination با php


سلام عزیزان امروز برای تان سورس php برای ساخت پگنیشن بسیار ساده آوردم.

این کد ها فقط برای آموزش این مطلب پرکاربرد است و برای استفاده در پروژه واقعی قابل قبول و بهینه نمی باشد ، صرفا جهت آموزش است.

در این آموزش از متد PDO استفاده کردیم ، و این کد ها در بستر localhost اجرا شده .



در قسمت اول به دیتا بیس متصل میشویم ، مقدار صفحه فعال در متغیر page می ریزیم و تعداد ردیفی که در هر صفحه میخواهیم نمایش داده شود را مشخص می کنیم.

$SQL = new PDO(&quotmysql:host=localhost;dbname=wordpres&quot, &quotroot&quot, &quot&quot); $page = isset($_GET['page']) ? $_GET['page'] : 1; $results_per_page = 3;


در مرحله بعدی محاسبه اولین نتیجه صفحه را انجام میدهیم و در متغیر page_frist_result میریزم سپس با کوئری زیر مقدار تعداد سطر های جدول را بدست آورده و در متغیر number_of_result میریزیم.

$page_first_result = ($page - 1) * $results_per_page; $query = $SQL->prepare(&quotSELECT COUNT(*) AS shok FROM tomy&quot); $query->execute(); $row =  $query->fetch(); $number_of_result = $row[0];


در این مرحله تعداد سطر هایی که باید بر گردند را محاسبه و کوئری را اجرا میکنیم و نتیجه را در حلقه foreach میشکنیم چون نتیجه به صورت آرایه به دست آمده از دیتابیس.

$number_of_page = ceil($number_of_result / $results_per_page); $query = $SQL->prepare(&quotSELECT * FROM tomy LIMIT $page_first_result,$number_of_page&quot); $result = $query->execute(); $rows = $query->fetchAll(); foreach ($rows as $value) { echo $value['name']; echo $value['lname']; echo '<br>'; }

و در مرحله آخر دکمه ها را می نویسیم .

$backer = $page == 1 ? 'disabled' : '' ; $Fronter = $number_of_page <= $page ? 'disabled' : '' ; ?> <a href=&quot?page=<?php echo $page-1 ?>&quot><button <?php echo $backer ?>><</button></a> <a href=&quot?page=<?php echo $page+1 ?>&quot><button <?php echo $Fronter ?>>></button></a>


و اینم عکس ساختاری که من استفاده میکردم

دیتابیس
دیتابیس



ممنون که نوشته من را مطالعه کردید ، چون این اولین نوشته من است ممکن است اشتباهاتی باشد حتما نظرات خود را بنویسید تا نوشته بعدی بدرود

phpپی اچ پیبرنامه نویسیصفحه بندی
۶
۰
taymaz
taymaz
توسعه دهنده وب
شاید از این پست‌ها خوشتان بیاید