• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
حذف کردن منو و زیر منو ها
#1
سلام
من یه تابع نوشتم برای ساختن منو و زیر منو که درست عمل میکنه و منو و زیر منو را به صورت بینهایت میسازه
الان میخوام این منو رو حذف کنم یک تابع دیگه نشتم که میاد منو و زیر منو های مرتبط رو حذف میکنه البته ناقص هست
دوستان کسی میدونه این کد کجاش ایراد داره که میاد فقط یک منو و زیر منو حذف میکنه مثلا منوی زیر رو در نظر داشته باشید
منوی تست
  • --زیر منو1
    1. ------------زیر منو زیر منو1
    2. -------------------زیر منو زیر منو
    3. -------------------زیر منو زیر منو
    4. -------------زیر منو زیر منو1

  • زیر منو2
  • زیر منو زیر منو1
  • زیر منو زیر منو1
  • زیر منو زیر منو1
  • زیر منو زیر منو1

این کد فقط میاد منوی تست و زیر منوی 1 رو حذف میکنه (با کلیک برروی دکمه حذف منوی تست)

کد پی‌اچ‌پی:
function menu_del($id)
        {
            global 
$db;
            
$user_id filter_var($_SESSION['user_id'], FILTER_SANITIZE_NUMBER_INT,FILTER_FLAG_STRIP_LOW);
            
$q1$db -> fetch("select * from `menu_product` where parent_id='$id' && id_admin='{$user_id}'");
            
$id_del $q1['id'];
            
$db -> query("DELETE FROM `menu_product` WHERE id='{$id_del}' && id_admin='{$user_id}'");
            
$q2$db -> rowcount("select * from `menu_product` where parent_id='$id_del' ");
            if(
$q2>=0)
            {
                
menu_del($id_del);
            }     
        } 
  پاسخ
تشکر شده توسط :
#2
کسی میتونه منو درباره نحوه حذف منو و زیر منوهای مرتبط کمک کنه؟
  پاسخ
تشکر شده توسط :
#3
نوشتم بالاخره دوستانBig GrinBig GrinBig GrinTongueTongueTongueTongue
کد پی‌اچ‌پی:
function menu_del($id)
        {
            global 
$db;
            
$user_id filter_var($_SESSION['user_id'], FILTER_SANITIZE_NUMBER_INT,FILTER_FLAG_STRIP_LOW);
            
$db -> query("DELETE FROM `menu_product` WHERE id='{$id}' && id_admin='{$user_id}'");
            
$q1$db -> fetch_all("select * from `menu_product` where parent_id='$id' && id_admin='{$user_id}'");
            foreach(
$q1 as $q1)
            {
                
menu_del($q1['id']);
            }   
        } 
CoolCoolCool
  پاسخ
تشکر شده توسط : Y.P.Y
#4

راستی اینم سوپرایز دیگه برای کسایی که این مشکل رو دارن
ساخت منوی چند سطحی توووپ

تابع
کد پی‌اچ‌پی:
function menu($level=0)
{
    global 
$db;
    
$user_id filter_var($_SESSION['user_id'], FILTER_SANITIZE_NUMBER_INT,FILTER_FLAG_STRIP_LOW);
    
$q1$db -> fetch_all("select * from `menu_product` where parent_id='{$level}' && id_admin='{$user_id}' ");
    foreach(
$q1 as $q1)
    {
       if(
$q1['parent_id'] == 0)
       {
            
$type 'menu';
       }
       else{
$type 'sub_menu';}
        
$name=$q1['menu_name'];
        
$id=$q1['id'];
        echo 
'<li><a>'.$name.'<i title="X" style="float: left;font-size: 30px !important;" data-id="'._base64_encrypt($id).'" data-type="'.$type.'" class="del_menu fa fa-trash"></i> </a>';
        
$q2$db -> rowcount("select * from `menu_product` where parent_id='$id' ");
        if(
$q2>=0)
            {
                echo 
'<ul class="sub-menu">';
                    
menu($id);
                echo 
'</ul>';
            }
        echo 
'</li>';    
    }

من اینو با توجه به نیاز خودم نوشتم شما میتونید ویرایشات خودتونو انجام بدید و ازش استفاده کنید
موفق باشید
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان