הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   צריך עזרה בתפריט נגלל לקטגורייות רקורסביות (https://hosts.co.il/forums/showthread.php?t=75346)

stel222 09-06-09 12:08

צריך עזרה בתפריט נגלל לקטגורייות רקורסביות
 
היי זה הקוד מקר לסקריפט אני יכול להוסיף כמה סאב קטגוריה שאני רוצה

PHP קוד:

<ul id="nav">
    <
li> <a href="#" >first Level menu</a>
        <
ul>
           <
li><a href="#" >second Level menu</a></li>

           <
li><a href="#" >second Level menu</a>
                <
ul>
                    <
li><a href="#" >third Level menu</a></li>
                <
ul>
                <
li><a href="#" >שדגשדג</a></li>
                  </
ul>
                </
ul>
             </
li>
          </
ul>
      </
li>
    <
li> <a href="#" >2 Level menu</a>
        <
ul>
           <
li><a href="#" >second Level menu</a></li>

           <
li><a href="#" >second Level menu</a>
                <
ul>
                    <
li><a href="#" >third Level menu</a></li>
                </
ul>
        <
ul>
                <
li><a href="#" >שדגשדג</a></li>
                  </
ul>
             </
li>
          </
ul>
      </
li>
</
ul

המסד נראה ככה :
name position id

ID זה האידי של הקטגוריה
POSITION זה כל מה שיש תחת הקטגוריה

דוגמא ל2 קטגוריות

ID 72

POSITION

68>70>71>72>

72 ואז 71 ואז 70 ...

עוד דוגמא לקטגוריה בלי סאבים

ID 67

POSITION

67>

עכשיו זה מה שעשיתי לקוד סקריפט

PHP קוד:

<ul id="nav">
    <li> <a href="#" >תמיכה</a>
            <ul>
            <?
        
                        $query 
mysql_query("SELECT * FROM `categories`") or die(mysql_error());
                        while(
$row mysql_fetch_array($queryMYSQL_ASSOC)) {
                            
$position $row[position];

$check_sql "SELECT id FROM categories WHERE position RLIKE  '^".$position."[0-9]+>$'";
$check_res mysql_query($check_sql) or die(trigger_error("<br><storng><u>MySQL Error:</u></strong><br>".mysql_error()."<br><br><storng><u>Query Used:</u></strong><br>".$check_sql."<br><br><storng><u>Info:</u></strong><br>",E_USER_ERROR));
$check mysql_fetch_array($check_res);
if(
$check['id'] == "") {  כאן בדקתי שזה קטגורי ראשית אז יציג קודם תראשיות
?>
           <li><a href="#" ><?=$row["c_name"]?></a></li>
           <?php
          
}
                            
                              
$position $row['position'];
            
$arr explode(">",$position);
        for(
$i=0;$i<count($arr);$i++){  כאן זה אמור להוציא את התת
              
echo "<ul>";
                echo 
"<li><a href=\"#\" >".$arr[$i]."</a></li>";
                echo 
"</ul>";
          }
          
         }
               
?>
          </ul>
         
      </li>
      
</ul>

אני יודע שלא עשית את זה טוב ואין לי מושג מה לעשות למשהו יש רעיון ?


כל הזמנים הם GMT +2. הזמן כעת הוא 19:57.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ