- الرئيسية
- ما الجديد !
-
الصفحات▼
الصفحات
أهلا وسهلا بك زائرنا الكريم في منتدى دعم PBBoard الرسمي، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .
طريقة برمجة تعدد الصفحات واضافتها لصفحات موقعك
-
20-04-2019 08:02 مساءً
-
monsمعلومات الكاتبالأعضاءعضـو مشارك
- انضم في :
- 03-06-2013
- رقم العضوية :
- 3663
- المشاركات :
- 29
- الجنس:
- تاريخ الميلاد :
- 21-5-1987
- قوة السمعة:
- 320
- موقعي:
- زيارة موقعي
-
درس لعمل كود تعدد صفحات مريح و سهل جدا ان شاء الله
اولا الكود كالاتى : ("وسنقوم بشرحة بالتفصل ان شاء الله")::..
CODE<?php // Included file include("config.php") ; ###################################################### ## Start Paging System ############################## ##################################################### // get page number $get = $_GET['page'] ; // set page to one if not set if (!isset($get)){ $get = 1 ; }else{ $get = $_GET['page'] ; } // Query for retrieve all data $query = mysql_query("select * from test ") ; // Maximum records in page $max = 3 ; // Counting Rows Number $count = mysql_num_rows($query) ; // Get Number of pages needed $div = ceil($count/$max) ; $rem = $count % $div ; // if 0 remain from the division if($rem == 0 ) { $pages = $div ; } else { $pages = $div + 1 ; } // next and prev $prev = $get - 1 ; $next = $get + 1 ; // Type Firt record link if($get != 1){ echo "<a style='text-decoration: none; color: red; font-size: 12pt; font-weight: bold' href='show.php?page=1'> [[First]] </a>" ; } // Type Prev record link if($get > 1) echo "<a style='text-decoration: none; color: blue; font-size: 12pt; font-weight: bold' href='show.php?page=$prev'> [[Prev]] </a>" ; // type pages for ($i=1 ; $i <= $pages ; $i++){ if ($get == $i){ echo "<font size=4 color=violet><b>[$i] </b></font>" ; }else{ echo "<a style='text-decoration: none; color: red; font-size: 14pt; font-weight: bold' href='show.php?page=$i'>$i</a> " ;}} // Type Next record link if($get < $div) echo "<a style='text-decoration: none; color: blue; font-size: 12pt; font-weight: bold' href='show.php?page=$next'> [[Next]] </a>" ; // Type Last record link if($get != $pages){ echo "<a style='text-decoration: none; color: red; font-size: 12pt; font-weight: bold' href='show.php?page=$pages'> [[Last]] </a>" ; } echo "<br>" ; // get limit value $limit = ($get * $max) - $max ; // Query for retrieve data with limit $query2 = mysql_query("select * from test LIMIT $limit,$max ") ; // Data from query while ($row = mysql_fetch_array($query2)){ ####################################################### ## End Of Paging System ############################## ##################################################### echo $row['id']." - ".$row['test']."<br>" ; } ?>
طبعا الكود زى ما شايفين طويل شوية بس ساهل جدا
الان نبدأ بالشرح ::..
طبعا هنا نضمن ملف الاتصال بقاعدة البيانات "طبعا احنا عارفين دالة الاتصال بقاعدة البيانات"CODE<?php // Included file include("config.php") ;
هذا الجزء يقوم بجلب رقم الصفحة ان وجدCODE/ get page number $get = $_GET['page'] ;
مثلا لو تم طلب الصفحة ::.. page.php?page=1
هنا نضع شرط اذا لم ينشأ المتغير page نضع قيمة افتراضية له و هى 1 اى للصفحة الاولىCODE// set page to one if not set if (!isset($get)){ $get = 1 ; }else{ $get = $_GET['page'] ; }
هذه الكويرى للاتصال بالجدول و هو و لنفرض testCODE// Query for retrieve all data $query = mysql_query("select * from test ") ;
CODE
// Maximum records in page
$max = 3 ;
هنا رقم اقصى عدد للبيانات فى الصفحة الواحدة
CODE// Counting Rows Number
$count = mysql_num_rows($query) ;
الدالة تقوم بجلب عدد الصفوف فى الجدول اعتمادا على الكويرى السابق
طبعا هنا فى دالتين الاولى :::CODE// Get Number of pages needed
$div = ceil($count/$max) ;
$rem = $count % $div ;
الدالة الثانبة :::
% تقوم بجلب باقى القسمة لرقمين
و هذا الكود لجلب عدد الصفحات اللى نحتاجها
ceil لاخذ القيمة الاقرب لقيمة float عشرية
لو ان القسمة بدون باقى اى القسمة منتهيةCODE// if 0 remain from the division
if($rem == 0 ) {
$pages = $div ; } else {
$pages = $div + 1 ; }
يكون عدد الصفحات هو ناتج القسمة
اما لو فى باقى فان عدد الصفحات هو ناتج المعادلة الاولى مجموعا عليه واحد
نضبط متغيرات الصفحة التالية و السابقةCODE// next and prev
$prev = $get - 1 ;
$next = $get + 1 ;
طبعا هنا نضع لينك للصفحة الاولى حيث ان رقم الصفحة لا يساوى الواحدCODE// Type Firt record link if($get != 1){ echo "<a style='text-decoration: none; color: red; font-size: 12pt; font-weight: bold' href='show.php?page=1'> [[First]] </a>" ; }
CODE// Type Prev record link if($get > 1) echo "<a style='text-decoration: none; color: blue; font-size: 12pt; font-weight: bold' href='show.php?page=$prev'> [[Prev]] </a>" ;
هذا كود للينك الصفحة السابقة معتمدا على المتغير السابق $prev
هنا كود للصفحات و استخدمنا الدالة for التكرارية لعرض الصفحاتCODE// type pages for ($i=1 ; $i <= $pages ; $i++){ if ($get == $i){ echo "<font size=4 color=violet><b>[$i] </b></font>" ; }else{ echo "<a style='text-decoration: none; color: red; font-size: 14pt; font-weight: bold' href='show.php?page=$i'>$i</a> " ;}}
و اذا كان رقم الصفحة هو الصفحة الحالية نضعه بدون رابط
طبعا الكود السابق يوضح لينك الصفحة الاخيرة و الصفحة التالية معتمدا على المتغير اللى ذكرناهCODE// Type Next record link if($get < $div) echo "<a style='text-decoration: none; color: blue; font-size: 12pt; font-weight: bold' href='show.php?page=$next'> [[Next]] </a>" ; // Type Last record link if($get != $pages){ echo "<a style='text-decoration: none; color: red; font-size: 12pt; font-weight: bold' href='show.php?page=$pages'> [[Last]] </a>" ; } echo "<br>" ;
سابقا
هنا نقوم بتحديد الليميت limit او القيمة اللى يبدأ عندها العدCODE// get limit value $limit = ($get * $max) - $max ; // Query for retrieve data with limit $query2 = mysql_query("select * from test LIMIT $limit,$max ") ; // Data from query while ($row = mysql_fetch_array($query2)){
و هى عملية حسابية بسيطة " او مش مفهومة ارجو ابلاغى "
و طبعا الكويرى يجلب البيانات من قاعدة البيانات بتحديد القيمة الى اقصى عدد للصفحات
و الدالة while لجلب البيانات من الجدول
وبالله التوفيق
-
-
طريقة برمجة تعدد الصفحات واضافتها لصفحات موقعك22-04-2019 08:50 مساءً [1]
-
kareemمعلومات الكاتبموقوف....
- انضم في :
- 03-03-2014
- رقم العضوية :
- 5072
- المشاركات :
- 1639
- الجنس:
- الدعوات:
- 2
- قوة السمعة:
- 8650
-
شكرا لك لمشاركتنا الموضوع
-
-
طريقة برمجة تعدد الصفحات واضافتها لصفحات موقعك05-05-2019 04:28 مساءً [2]
-
fatnمعلومات الكاتبالأعضاءعضـو مشارك
- انضم في :
- 05-05-2019
- رقم العضوية :
- 8423
- المشاركات :
- 3
- الجنس:
- تاريخ الميلاد :
- 18-1-1990
- قوة السمعة:
- 0
-
thanks for your effort

-