witam wszystkich..... jest to moj pierwszy post.... zagladam tu od dawna ale teraz dopiero sie zarejestrowałem.... przeszukałem juz forum i nie znalazlem pasujacego do moich potrzeb wiec napisalem swój kod i tu moja prosba czy za bardzo nie obciaza on serwera?

i czy mozna by to uproscic? praktycznie mozna dodawac nieskonczona liczbe kategorii i podkategorii + mozliwość sterowania kolejnością na liście... jestem laikiem wiec prosze o wyrozumialosc...
<?PHP
# DRZEWO KATEGORII
# tomaner[at]o2.pl
// ustawienia mysql
// funkcja pobierajaca podkategorie
function getSubCat($id){
if($ilosc[$id][0]>0){
$dane[$id] = '<ul>';
$zap[$id] = mysql_query("SELECT * FROM kategorie WHERE podkat='$id' ORDER BY pozycja ASC;");
// dane do zmiany pozycji
$AA[$id] = mysql_fetch_array(mysql_query("SELECT * FROM kategorie WHERE podkat='".$aktualnaPozycja[$id][1]."' AND pozycja>'".$aktualnaPozycja[$id][2]."' ORDER BY pozycja ASC LIMIT 1;")); $BB[$id] = mysql_fetch_array(mysql_query("SELECT * FROM kategorie WHERE podkat='".$aktualnaPozycja[$id][1]."' AND pozycja<'".$aktualnaPozycja[$id][2]."' ORDER BY pozycja DESC LIMIT 1;"));
$menuUpDown[$id] = "";
// buduje menu przesuniec gora dol
$menuUpDown[$id] .= '<img src="space.gif" width="3" height="12"><a href="./?mod=move&co='.$db[$id][0].'&gdzie='.$BB[$id][0].'"><img src="up.gif" border=0 width="12" height="12"></a>';
}
$menuUpDown[$id] .= '<img src="space.gif" width="3" height="12"><a href="./?mod=move&co='.$db[$id][0].'&gdzie='.$AA[$id][0].'"><img src="down.gif" border=0 width="12" height="12"></a>';
}
$dane[$id] .= '<li><a href="./?cat='.$db[$id][0].'">'.$db[$id][3].'</a> <a href="java script:addCat('.$db[$id][0].');"><img src="add.gif" border=0 width="12" height="12"></a><img src="space.gif" border=0 width="3" height="12"><a href="java script:editCat(''.$db[$id][0].'',''.$db[$id][3].'');"><img src="edit.gif" border=0 width="12" height="12"></a><img src="space.gif" width="3" height="12"><a href="java script:delCat(''.$db[$id][0].'',''.$db[$id][3].'');"><img src="del.gif" border=0 width="12" height="12"></a>'.$menuUpDown[$id].'</li>';
$dane[$id] .= getSubCat($db[$id][0]);
}
$dane[$id] .= '</ul>';
return $dane[$id];
}
}
// dodaje kategorie
if($_GET['mod']=="add"){
mysql_query("INSERT INTO kategorie VALUES('','".$_GET['kat']."','".($pozycja[0]+1)."','".urldecode($_GET['nazwa'])."');"); }
//usowa kategorie
if($_GET['mod']=="del"){
$zapytanie=mysql_query("DELETE FROM kategorie WHERE id='".$_GET['kat']."';"); }
// przesowa kategorie
if($_GET['mod']=="move"){
if(empty($_GET['gdzie'])){ $_GET['gdzie'] = $_GET['co'];
}
mysql_query("UPDATE kategorie SET pozycja='".$valGdzie[2]."' WHERE id='".$valCo[0]."';"); mysql_query("UPDATE kategorie SET pozycja='".$valCo[2]."' WHERE id='".$valGdzie[0]."';");
}
//edytuje kategorie
if($_GET['mod']=="edit"){
mysql_query("UPDATE kategorie SET nazwa='".urldecode($_GET['nazwa'])."' WHERE id='".$_GET['kat']."';");
}
<script Language="JavaScript">
function addCat(subkat){
var nazwa = prompt("Podaj nazwę kategorii:", "");
if(nazwa == null || nazwa == ""){
}else{
document.location = "./?mod=add&kat="+subkat+"&nazwa="+nazwa;
}
}
function delCat(idkat,val){
if(confirm("Czy napewno chcesz usunąć kategorię: "+val+"?")){
document.location = "./?mod=del&kat="+idkat;
}
}
function editCat(idkat,val){
var nazwa = prompt("Nazwa kategorii:", val);
if(nazwa == null || nazwa == "" || nazwa == val){
}else{
document.location = "./?mod=edit&kat="+idkat+"&nazwa="+nazwa;
}
}
</SCRIPT>
<input type=button onclick="addCat(0);" value="+ kategoria główna"><hr>
');
$zap=mysql_query("SELECT * FROM kategorie WHERE podkat='0' ORDER BY pozycja ASC;");
$AA = mysql_fetch_array(mysql_query("SELECT * FROM kategorie WHERE podkat='".$aktualnaPozycja[1]."' AND pozycja>'".$aktualnaPozycja[2]."' ORDER BY pozycja ASC LIMIT 1;")); $BB = mysql_fetch_array(mysql_query("SELECT * FROM kategorie WHERE podkat='".$aktualnaPozycja[1]."' AND pozycja<'".$aktualnaPozycja[2]."' ORDER BY pozycja DESC LIMIT 1;")); $menuUpDown = "";
$menuUpDown .= '<img src="space.gif" width="3" height="12"><a href="./?mod=move&co='.$db[0].'&gdzie='.$BB[0].'"><img src="up.gif" border=0 width="12" height="12"></a>';
}
$menuUpDown .= '<img src="space.gif" width="3" height="12"><a href="./?mod=move&co='.$db[0].'&gdzie='.$AA[0].'"><img src="down.gif" border=0 width="12" height="12"></a>';
}
echo('<li><a href="./?cat='.$db[0].'">'.$db[3].'</a> <a href="java script:addCat('.$db[0].');"><img src="add.gif" border=0 width="12" height="12"></a><img src="space.gif" border=0 width="3" height="12"><a href="java script:editCat(''.$db[0].'',''.$db[3].'');"><img src="edit.gif" border=0 width="12" height="12"></a><img src="space.gif" width="3" height="12"><a href="java script:delCat(''.$db[0].'',''.$db[3].'');"><img src="del.gif" border=0 width="12" height="12"></a>'.$menuUpDown.'</li>'); }
?>
a tu wyglad tabeli kategorie:
ID - bigint(255) AUTO_INCREMENT
PODKAT - bigint(255)
POZYCJA - bigint(255)
NAZWA - text
ewentualnie wszystko do pobrania spakowane rar'em: