السلام عليكم ورحمة الله وبركاته
تم عمل المثال بالكامل لك عزيزي PHPLover ..
طريقة التركيب ..
1- إزرع ملف cat.sql في قاعدة البيانات
2- عدل على بيانات قاعدة البيانات من خلال ملف showcat.php
3- ارفع ملف ajaxCat.js و showcat.php للسيرفر أو انقلهم لفولدر السيرفر اذا كنت تعمل على سيرفر شخصي ..
توضيح المثال ..
لدينا أقسام رئيسية وهي swalif و news .. ولها أقسام فرعية ربطناها عن طريق حقل parentid في قاعدة البيانات .. في البداية سنطلب من ملف showcat ان يستعلم لنا على الأقسام الرئيسه في حال لم يتم الاوبشن من خلال رابط الملف showcat.php?op .. بعدها سينزل لنا الاقسام الرئيسية والتي يكون حقل الparent id لها هو main في القائمة المنسدلة ومن خيارات القائمة المندسلة وضعنا ..
كود:
onchange='ShowCat()'
معنى الكود هو عند التغير بين خيارات القائمة اعمل على تشغيل الدالة showcat() وهذه هي دالة الاجاكس التي اخذناها من ملف ajaxCat.js والذي استدعيناه في بداية ملف showcat.php ..
وهذه الدالة عملها هو ان تاخذ الـvalue او القيمة الخاصة بالقسم news مثلا ً وتذهب بها للاوبشن showcat.php?op=show وتسند له قيمة الـid للقسم الرئيسي فلنفترض انه 1 .. اذا ستذهب للرابط showcat.php?op=show&id=1 عن طريق الـmethod get ..
في ملف showcat.php في حال حدد الاوبشن وهو op=show سنطلب من الملف أن يأتي بالأقسام الفرعية والتي يكون الparentid لها هو الـid الذي ارسلته لنا دالة الأجاكس ومن ثم تطبع القيمة ..
عند طباعة هذه القيمة ستقوم دالة الاجاكس showcat() بطباعة هذه القيمه في منطقه اسمينها parentdrop
هذه هي الفكرة .. راجي ان ان تكون مفهومة بالكامل ..
ملاحظة هامة : هذا المثال تم بناءه على افتراض ان الأقسام موجودة مسبقا ً في قاعدة البيانات أي أنه لايوفر لك خاصية اضافة قسم .. ولو أردت هذه الخاصية بالاجاكس فبالإمكان عملها ان شاءالله ..
أي سؤال حول المثال انا حاضر ..
للتحميل : المرفقات ..
محمد...