-----8><-------
> Tom Jakobsen wrote:
> > Does any1 know what to do to show the department tree for a item??
>
> Tree?  I'm gonna take a guess that you're interested in a navbar
> like Yahoo does.  I use the following code in my item screen:
>
>       //get item info
>       $Item = GetItemInfo($item);
>
>       if( !isset($department) )
>       {
>               //get the department for this item
>               $department = $Item["Department"][0];
>
>       }
>
>       $department = intval($department);
>

And..

If you add this next part just after $department = intval($department); in
department screen as well as in item screen it works well.  Just make sure
you put readtable() into the
item_functions include.

Chuck

>       // This seems pretty expensive but I can't
>       // come up with any better way.
>       readtable($deparray, "SELECT ID, d.* FROM department d");
>       $bar = "";
>       $sep = "";
>       $parent = $department;
>       while ($parent && $deparray[$parent]["Parent"]) {
>               $url = ScreenURL("department", FALSE
>               , array("department"    => $parent));
>               $bar = "<a href=\"$url\">"
>               . $deparray[$parent]["Name"]
>               . "</a>" . $sep . $bar;
>               $sep = " > ";
>               $parent = $deparray[$parent]["Parent"];
>       }
>       print $bar . "<p>\n";
>
> You can replace readtable() with something of your own design.
> It builds $deparray as an array of department records indexed
> by the department id.  Hmm, or I guess you can just use mine:
>
>       /*
>       ** readtable: fill array with table.  First field
>       ** will be used as the index, all fields will be
>       ** stored as value unless a specific field-name
>       ** or field number is given.
>       */
>       function readtable(&$array, $sql, $field = "") {
>               $r = mysql_query($sql);
>               if ($r) {
>                       while ($row = mysql_fetch_array($r)) {
>                               if ($row[0] != "" && $field != "") {
>                                       $array[$row[0]] = $row[$field];
>                               } elseif ($row[0] != "") {
>                                       $array[$row[0]] = $row;
>                               } elseif ($field != "") {
>                                       $array[] = $row[$field];
>                               } else {
>                                       $array[] = $row;
>                               }
>                       }
>               } else {
>                       $array = array();
>               }
>       }
>
> --
> Paul Chamberlain, [EMAIL PROTECTED]
>



------------------------------------------------------------
To subscribe:    [EMAIL PROTECTED]
To unsubscribe:  [EMAIL PROTECTED]
Site:            http://www.working-dogs.com/freetrade/
Problems?:       [EMAIL PROTECTED]

Reply via email to