pasargadteam
شنبه 03 مهر 1395, 19:00 عصر
با سلام و درود بیکران
بنده یه کد دارم برای منو که از دیتابیس میخونه و منو و زیر منو رو کامل و درست میاره و مشکلی هم ندارم.
مثل تصویر زیر:
142747
کد PHP مربوط به ساختنش هم به شکل زیر هست:
<?php
function MenuGroups($parent = 0) {
$parent = mysql_real_escape_string($parent);
$items = mysql_query("SELECT * FROM `menus` WHERE (`parentid`='{$parent}') ORDER BY `sort`");
if ($items && mysql_num_rows($items) > 0) {
while ($item = mysql_fetch_assoc($items)) {
$count = mysql_result(mysql_query("SELECT COUNT(*) AS `count` FROM `menus` WHERE (`parentid`='{$item['ID']}')"), 0, 0);
if ($count > 0) {
echo '<li class="dropdown"><a href="#" data-toggle="dropdown" class="dropdown-toggle"> ' . $item['menu_name'] . '<span class="caret"></span></a>';
echo '<ul class="dropdown-menu" role="menu">';
MenuGroups($item['ID']);
echo '</ul>';
echo '</li>';
}else {
if ($item['menu_type'] == 1 && $item['status'] == 1){
echo '<li><a href="/page/'.$item['slug'].'.html">' . $item['menu_name'] . '</a></li>';
}elseif($item['menu_type'] == 2 && $item['status'] == 1){
echo '<li><a href="/articles/'.$item['slug'].'.html">' . $item['menu_name'] . '</a></li>';
}
}
}
mysql_free_result($items);
}
}
?>
مشکل از اون جایی شروع میشه که من میخواهم تو در تو بسازمش به شکل زیر:
142748
که کد HTML اون به شکل زیر هست:
<li class="dropdown"><a href="#" data-toggle="dropdown" class="dropdown-toggle"> منوی چند زیر منو دار <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
<li class="dropdown-submenu"><a href="#">منوی چهارم نمایشی</a>
<ul class="dropdown-menu">
<li><a href="#">منوی اول نمایشی</a></li>
<li class="dropdown-submenu"><a href="#">منوی دوم نمایشی</a>
<ul class="dropdown-menu">
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
و یا به شکل مگا بسازمش به شکل زیر:
142749
که کد HTML اون به این شکل هست:
<li class="dropdown pscoltd-fw"><a href="#" data-toggle="dropdown" class="dropdown-toggle"> مگا منو <b class="caret"></b></a>
<ul class="dropdown-menu fullwidth">
<li class="pscoltd-content withdesc">
<div class="row">
<div class="col-sm-2">
<h3 class="title">- دسته اول نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته دوم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته سوم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته چهارم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته پنجم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته ششم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
</div>
</li>
</ul>
</li>
جدول دیتابیس هم به این شکل هست که:
ID = شماره منو.
menu_name = نام منو.
slug = همون نام منو هست فقط به جای فاصله - میندازه برای لینک سازی سئو پسند.
parentid = اینکه منوی اصلی هست (0) یا زیر دسته کدام منو هست و آیدی رو میاره میزاره.
sort = ترتیب نویسی هست.
menu_type = نوع منو رو با 1 و 2 مشخص میکنه. یک باشه صفحه و دو باشه میشه مقاله..
status = وضعیت منو.
adminid = کدام از مدیران وارد کردن اینو.
سپاس گذار خواهم بود که اگر بهم کمک کنید که چطوری باید این رو تکمیل کنم و به نتیجه نهایی که میخواهم برسم.
این رو هم اضافه کنم بسیار در PHP مبتدی هستم.
سپاس فراوان.
بنده یه کد دارم برای منو که از دیتابیس میخونه و منو و زیر منو رو کامل و درست میاره و مشکلی هم ندارم.
مثل تصویر زیر:
142747
کد PHP مربوط به ساختنش هم به شکل زیر هست:
<?php
function MenuGroups($parent = 0) {
$parent = mysql_real_escape_string($parent);
$items = mysql_query("SELECT * FROM `menus` WHERE (`parentid`='{$parent}') ORDER BY `sort`");
if ($items && mysql_num_rows($items) > 0) {
while ($item = mysql_fetch_assoc($items)) {
$count = mysql_result(mysql_query("SELECT COUNT(*) AS `count` FROM `menus` WHERE (`parentid`='{$item['ID']}')"), 0, 0);
if ($count > 0) {
echo '<li class="dropdown"><a href="#" data-toggle="dropdown" class="dropdown-toggle"> ' . $item['menu_name'] . '<span class="caret"></span></a>';
echo '<ul class="dropdown-menu" role="menu">';
MenuGroups($item['ID']);
echo '</ul>';
echo '</li>';
}else {
if ($item['menu_type'] == 1 && $item['status'] == 1){
echo '<li><a href="/page/'.$item['slug'].'.html">' . $item['menu_name'] . '</a></li>';
}elseif($item['menu_type'] == 2 && $item['status'] == 1){
echo '<li><a href="/articles/'.$item['slug'].'.html">' . $item['menu_name'] . '</a></li>';
}
}
}
mysql_free_result($items);
}
}
?>
مشکل از اون جایی شروع میشه که من میخواهم تو در تو بسازمش به شکل زیر:
142748
که کد HTML اون به شکل زیر هست:
<li class="dropdown"><a href="#" data-toggle="dropdown" class="dropdown-toggle"> منوی چند زیر منو دار <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
<li class="dropdown-submenu"><a href="#">منوی چهارم نمایشی</a>
<ul class="dropdown-menu">
<li><a href="#">منوی اول نمایشی</a></li>
<li class="dropdown-submenu"><a href="#">منوی دوم نمایشی</a>
<ul class="dropdown-menu">
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
و یا به شکل مگا بسازمش به شکل زیر:
142749
که کد HTML اون به این شکل هست:
<li class="dropdown pscoltd-fw"><a href="#" data-toggle="dropdown" class="dropdown-toggle"> مگا منو <b class="caret"></b></a>
<ul class="dropdown-menu fullwidth">
<li class="pscoltd-content withdesc">
<div class="row">
<div class="col-sm-2">
<h3 class="title">- دسته اول نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته دوم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته سوم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته چهارم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته پنجم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
<div class="col-sm-2">
<h3 class="title">- دسته ششم نمایشی</h3>
<ul>
<li><a href="#">منوی اول نمایشی</a></li>
<li><a href="#">منوی دوم نمایشی</a></li>
<li><a href="#">منوی سوم نمایشی</a></li>
</ul>
</div>
</div>
</li>
</ul>
</li>
جدول دیتابیس هم به این شکل هست که:
ID = شماره منو.
menu_name = نام منو.
slug = همون نام منو هست فقط به جای فاصله - میندازه برای لینک سازی سئو پسند.
parentid = اینکه منوی اصلی هست (0) یا زیر دسته کدام منو هست و آیدی رو میاره میزاره.
sort = ترتیب نویسی هست.
menu_type = نوع منو رو با 1 و 2 مشخص میکنه. یک باشه صفحه و دو باشه میشه مقاله..
status = وضعیت منو.
adminid = کدام از مدیران وارد کردن اینو.
سپاس گذار خواهم بود که اگر بهم کمک کنید که چطوری باید این رو تکمیل کنم و به نتیجه نهایی که میخواهم برسم.
این رو هم اضافه کنم بسیار در PHP مبتدی هستم.
سپاس فراوان.