بسم الله الرحمن الرحيم
اول شي نبدأ بوضع الكود وهو مشروح وبشرحة مرة تانية ان شاء الله:
ملاحظة :- انسخ الكود وضعه في محرر لتقرأه جيدا.
كود PHP:
<?php
include("config.php");//استدعاء ملف الكونفيق
$count=$_POST[count];//ساوينا قيمة $_POST[] ب $count
if(! $count){//اذا لم يكن هناك قيملة ل$count اجعلها صفر
$count=0;
}
$adds=5;//عدد المدخلات في كل صفحة
$query="select * from back_t limit $count,$adds";//امر استخراج م قاعدة البيانات بتحديد المتغيرين $count,$adds
$result=@ mysql_query($query,$con);
$query2="select * from back_t";//هنا استخراج من قاعدة البيانات كل الموجود فيها وهي لمعرفة عدد المدخلات التي سوف نعمل عليها
$result2=@ mysql_query($query2,$con);
$chick_end=@ mysql_num_rows($result2);//معرفة عدد البيانات في الجدول الذي نستخرج منه البيانات
while($back=@ mysql_fetch_array($result)){
echo "$back[name]<br>";//عرض البيانات في الصفحة على اساس التحديد, وهنا سوف يكون $count=0 لانهافي الصفحة الرئيسة
}
$select="<form name=\"form1\" method=\"post\" action=\"$PHP_SELF\">
<select name=\"count\">";//نبدأ بعملية وضع النموذج و القائمة المنسدلة وسوف نقرنهما بتكرار
for($i=1;$i< $chick_end/$adds+1/*عملية حسابية جميلة ترجع لنا القيم بعدد الصفحات(احفظا حفظ:))*/;$i++){//بدء عملية التكرار لإخراج الارقام حسب التحديد
$page=$adds*($i-1);//عملية حسابية اخرى لحساب عدد المدخلات بالصفحة(احفظها حفظ)
$select.= "<option value=\"$page\"> $i </option>";//هنا نستدعي رقم الصفحة
}
$select.="</select><input type=\"submit\" name=\"Submit\" value=\"اذهب\"></form>";//نكمل النموذج
echo $select;//نستدعي النموذج
?>
الكود بيعتمد على استدعائين اساسيين وعمليتين حسابيتين بسيطتين
الكود الاول استدعاء قاعدة البيانات مع التحديد حيث ان ال$count اول شي تساوي 0 وبعدها تصير تكثر مع تعدد الصفحات و$adds ثابته وبمنعى اخر متل ما نكون عملنا limit 0,5 .
الكود التاني استدعاء لقاعدة البيانات ولكن من دون تحديد وذلك لمعرفة عدد البيانات في الجدول 10,11,12 .... وهكذا , وهي للعملية الحسابية التي سوف اشرح عنها.
العملية الحسابية الاولى تقوم على تقسيم عدد البيانات في الجدول على عدد البيانات التي سوف نعرضها وفي مثالنا كانت 5 والبيانات في الجدول 11 اي لو قسمنا 11/5 =2.2 وهذا يعني صفحتين(مع اهمال الفاصلة) وهذا لأننا بدأنا العد من 1 ولهذا اضفنا +1 على عملية القسمةوتصبح 3.2 اي 3 صفحات وبهذا يكون اخر البيانات قد عرض في الصفحة 3 .
العملية الحسابية الثانية تعمل على معرفة عدد البيانات التي سوف يتجاهلها التحديد اي قيمة$count فلو نتج عندنا 10 لكان التحديد limit 10,5 اي بعد ما تعد القاعدة 10 بيانات تبدأ بإظهار 5 اخرين.
واظن ان القائمة المنسدلة سهلة .
ملاحظة:- هذى الطريقة انا ابتكرتها وانا مجربها وشغالة 100% واي حد عنده اضافة ما يتردد واذا فيه اي نقد او اقتراح بردو ما يتردد ,لكن عند نقل الموضوع الرجاء ان يذكر رابط هذا الموضوع و من صاحبه
منقول من www.freeforarab.com • ظ…ط´ط§ظ‡ط¯ط© ط§ظ„ظ…ظˆط¶ظˆط¹ - ط¯ط±ط³ ط¨ط§ظ†ط´ط§ط، ط¹ط¯ط§ط¯ ظ„ظ„طµظپط*ط§طھ ظˆظˆط¶ط¹ ط§ظ„ط§ط±ظ‚ط§ظ… ط¨ظ‚ط§ط¦ظ…ط© ظ…ظ†ط³ط¯ظ„ط©
صور لتجربتي :