لديك حساب بالفعل؟ دخول
دخول  سجل الأن 
طريقة عمل التدوينة السابقة و التدوينة اللاحقة ؟
من يعطيني فكرة و لو بالتلميح الى طريقة عمل رابط للتدوينة السابقة و التدوينة الاحقة . بحيث يظهر رابط لعنوان التدوينة في اسفل كل تدوينة كما في الورد بريس

لا اطلب شرحا . اطلب الفكرة كي اقوم انا بتنفيذها اذا تكرمتم
تاريخ البداية: 31 / ديسمبر / 2011 الساعة 21:59 اخر نشاط: 2 / يناير / 2012 الساعة 13:57 السابق التالي
2 إجابات
الامر فى استعلام واحد
select t.*,
    (select id from `table` where id < t.id order by id asc limit 1) as `previous`,
    (select id from `table` where id > t.id order by id asc limit 1) as `next`
from `table` t where t.id =  {$current_id}
متغير $current_id هو الرقم الحالى وهكذا ستفعل هذا مباشرة show.php?id={$row['previous']}
لم اجربه

بواسطة: علاء
منذ: 31 / ديسمبر / 2011 الساعة 22:29

شكرا اخي علاء عبد الستار . اشكرك على اجابتك .
من اول يوم لي في هذا الموقع احببته كثيرا بسبب سرعة تجاوب اعضائه
31 / ديسمبر / 2011 الساعة 22:34

تم التعديل - الان استعلام واحد للجميع
31 / ديسمبر / 2011 الساعة 22:44

شكرا يا علاء . بارك الله بك
2 / يناير / 2012 الساعة 13:57

رأيتها فى منتديات الفى بلتان ولكن يكون رابط التدوينة السابقة او التالية
show.php?id=5&go=next و show.php?id=5&go=previous
وتكون هذه الصفحة عندما تاتى لكى تنفذ الامر previous مع الاعتماد على انك سوف تختار على اساس الرقم وليس على اساس ترتيب القسم او ما شابه ، عليك اختار الرقم الاصغر من الرقم الحالى وتختار رقم واحد فقط اى تحدد limit تساوى 1 كمثال:-
اختيار المدخل التالى
 select id from products where id > 205 order by id asc limit 1
اختيار المدخل السابق
 select id from products where id < 205 order by id desc limit 1

بواسطة: molhm
منذ: 31 / ديسمبر / 2011 الساعة 22:8

اخي molhm
طريقتك خطرة في بالي في البداية . و لكن ربما يكون رقم id التالي او السابق محذوف . ربما يعود لتدوينة تم حذفها . فما العمل؟
31 / ديسمبر / 2011 الساعة 22:14

اسف . لم انتبه لشرط الاكبر و الاصغر في استعلامي البي اتش بي .
و لكن هنا يطرح علينا تسائل اخر . الا يمكن فعل ذلك كله بإستعلام واحد فقط؟
31 / ديسمبر / 2011 الساعة 22:15

بالفعل نبهتني لفكرة هامة . تساؤلي هو كيف يمكن تحقيق ذلك باقل عدد من الاستعلامات
31 / ديسمبر / 2011 الساعة 22:17

طريقتى تكون غلط وكلامك يبقى صح فى حالة واحدة لو انا طرحت واحد من الاى دى الحالى و قلت where id = 5-1 بس انا معملتش كدة ، فكر فيها .. دلوقت مش انا ال بحدد انا هختار ايه انا بختار اول رقم اصغر من الرقم الحالى فلو كان الاصغر منه بواحد محذوف سيبحث عن اصغر رقم واول رقم فهذه وظيفة رمز الاكبر من فلو ليس ملزم بالرقم بل باول مدخل اصغر منه موجود بقاعدة البيانات
31 / ديسمبر / 2011 الساعة 22:18

ماذا تقصد باستعلام واحد؟ تقصد تحضر الاكبر من والاصغر من؟ فى واحد؟
31 / ديسمبر / 2011 الساعة 22:21

نعم . هل من طريقة لذلك ؟
يعني اذا انا ارسلت استعلام لاحضار التدوينة و من ثم استعلام للدينة السابقة و من ثم استعلام للتدوينة اللاحقة يصبح عندي ثلاث استعلامات لقاعدة البيانات .
هل من طريقة لجلب بيانات التدوينة الحالية و التدوينة السابقة و التدوينة اللاحقة في استعلام وحد؟
و اشكرك على صبرك على اسئلتي
31 / ديسمبر / 2011 الساعة 22:27

أنشر اجابتك

xهل تريد الاجابة عن هذا السؤال؟ من فضلك سجل دخول او اشترك لتتمكن من الاجابة