كيف يا شباب طريقة تقسيم النتائج من (database) تقريبا 20 صف
الى صفحات في كل صفحة يعرض 5 صفوف طبعا مع وجود زري سابق و تالى
وشكرا..................
كيف يا شباب طريقة تقسيم النتائج من (database) تقريبا 20 صف
الى صفحات في كل صفحة يعرض 5 صفوف طبعا مع وجود زري سابق و تالى
وشكرا..................
يوســــــــــــــــــــــYOUSIFـــــــــــــــــــــف
الأمر ببساطة يعتمد على تعليمة limit في إستعلام sql فهي تستخدم لتحديد عدد النتائج المراد إرجاعها ، فلو اردنا أولا ثلاثة صفوف نكتب:
select * from table limit 3;
وهناك صيغة أخرى لها (وهي التي سنستثمرها) ترجع عدد معين من موقع معين ، فمثلاً لو اردنا أول ثلاثة صفوف من البداية نكتب :
select * from table limit 0,3;
الصفر هو موقع البداية ، والثلاثة عدد النتائج التي نريدها (لاحظ أن الترقيم يبدأ من الصفر).
مثال آخر لو أردنا خمسة صفوف من الموقع الخامس ، نكتب:
select * from table limit 4,5;
ولكن كيف يفيدنا ذلك في تقسيم النتائج على الصفحات؟
الأمر ببساطة نجعل رقم الصفحة هو موقع البداية ، وفي كل صفحة نبدأ من رقمها في الإستعلام (تذكر أن الترقيم يبدأ من الصفر).
وإليك هذا المثال:
<?
$number=5; //عدد النتائج في الصفحة
if(!is_int($_GET['page']) && $_GET['page']>=0 ) $page=0; //إذا لم يرسل رقم الصفحة أو ارسل بشكل خاطئ نجعله صفر
$start=$page*$number;
if(strat>0) --start;
$qeury="select * from table limit $start , $number";
$link = mysql_connect("localhost", "mysql_user", "mysql_password") or die("error: " . mysql_error());
mysql_select_db("db");
$result=mysql_query($query) or die("error: " . mysql_error());
while ($row = mysql_fetch_array($result)) {
echo "data is:", $row[0];
}
mysql_close();
?>
<a href="?page= <? ($page+1); ?>" >التالي</a>:::::::::::<a href="?page= <? ($page-1); ?>" >السابق</a>لم اجرب الكود السابق ، ولكن من المفترض أن يعمل بشكل صحيح.
تم تعديل هذه المشاركة بواسطة Teao في 13 مايو 2005 في 07:07
شكرا جزيلا يا اخي على الرد
وان شاء الله سوف اجرب الكود واذا اشتغل معي سوف ارد عليك
يوســــــــــــــــــــــYOUSIFـــــــــــــــــــــف
thank you very much
هذا الموضوع مغلق.