نحوه پیمایش برعکس (حل شد)

ساخت وبلاگ
سلام دوستان

من یک treemenu تو سایتم ایجاد کردم , تو نحوه پیمایش از فرزند به والد موندم چیکار کنم . میشه راهنمایی بفرمائید ...

ساختار جدول به این شکله :
id
name
parentId

تشکر

تشکر شده توسط:

چرا از فرزند میخواین به والد برسین؟ توی TreeView که این مدلی نیست. شاید توی Breadcrumbs مدنظرتونه.

بله جناب مهندس منظورم همون Breadcrumbs بود نمیدونم چرا گفتم TreeView , اما حل شد تشکر

تشکر شده توسط:

لطفاً راه حل رو هم به اشتراک بگذارین درصورت امکان. ممکنه مشکل برخی دیگه از دوستان هم باشه و بتونید بهشون کمک کنید.

تشکر شده توسط:

 function Lists($parent = 0) { connect(); $result = select("select * from category where ParentId_Fk = " . $parent); disconnect(); $i = 0; $children = array(); while($row = mysql_fetch_assoc($result)) { $children[$i] = array(); $children[$i]['id'] = $row['Id']; $children[$i]['name'] = $row['Name']; $children[$i]['children'] = Lists($row['Id']); $i++; } retu $children; }
/************************************************/
function menu($array = null) { if (count($array)) { foreach ($array as $item) { echo $item['name'] . ' / '; if (count($item['children'])) { menu($item['children']); } echo '<br />'; } } }
menu(Lists());

از کد بالا برای پیمایش به صورت TreeView استفاده کردم که اگه تو تگ های ul و  li ازش استفاده کنین می توانید یک منوی آبشاری رو داشته باشین

برای پیمایش به صورت Breadcrumbs هم کافیه تابع List رو به این صورت بنویسید :

 function Lists($parent) { connect(); $result = select("select * from category where Id = " . $parent); disconnect(); $i = 0; $children = array(); while($row = mysql_fetch_assoc($result)) { $children[$i] = array(); $children[$i]['id'] = $row['Id']; $children[$i]['name'] = $row['Name']; $children[$i]['children'] = Lists($row['ParentId_Fk']); $i++; } retu $children; }

makeMenu(Lists('شماره آیدی فرزند باید وارد شود'));

تشکر شده توسط:

برنامه نویس...
ما را در سایت برنامه نویس دنبال می کنید

برچسب : نویسنده : خنجی prog بازدید : 159 تاريخ : شنبه 22 اسفند 1394 ساعت: 0:08

خبرنامه