Napravio sam rekurzivnu funkciju, odnosno funkciju koja će da poziva samu sebe, koja prikazuje katekgorije i podkategorije i reda ih jednu ispod druge neogranicen broj podkategorija.
vako
Automobili
_ mercedes
_ _ dijelovi mercedesa
_ _ _karburator od mercedesa
_pežo
Životinje
_krava
_ _ mlijeko_kravije
Funkcija izgleda ovako
Code:
function blog_kategorije($id,$indent)
{
$upit=mysql_query("SELECT id_blog_kategorije, ime_kategorije FROM blog_kategorije WHERE kategorija_u_kategoriji='$id' ORDER BY datum_stvaranja_kategorije ASC");
if(mysql_num_rows($upit))
{
while($redak=mysql_fetch_array($upit))
{
$indent.=($id==0)?'':' _ ';
echo $indent.''.$redak['ime_kategorije'];
blog_kategorije($redak['id_blog_kategorije'],$indent);
$indent=substr($indent,0,1);
}
}
}
function blog_kategorije($id,$indent)
{
$upit=mysql_query("SELECT id_blog_kategorije, ime_kategorije FROM blog_kategorije WHERE kategorija_u_kategoriji='$id' ORDER BY datum_stvaranja_kategorije ASC");
if(mysql_num_rows($upit))
{
while($redak=mysql_fetch_array($upit))
{
$indent.=($id==0)?'':' _ ';
echo $indent.''.$redak['ime_kategorije'];
blog_kategorije($redak['id_blog_kategorije'],$indent);
$indent=substr($indent,0,1);
}
}
}
e sad bi ja da uradim da funkciju spremim u "Funkcije.php" i da je prikazujem na kojim ocu stranicama da mi budu blog kategorije, e sad pošto cu kategorije priakzivati na više načina, negdje u <div> a negdje u <option> itd.
Dali mi neko može reći kako da napravim prikazivanje funkcije
ja sam probo vako al neradi
Code:
<?php
require('sajt/Postavke.php'); //Poziva Postavke.php.
function blog_kategorije($id,$indent,$t)
{
$upit=mysql_query("SELECT id_blog_kategorije, ime_kategorije FROM blog_kategorije WHERE kategorija_u_kategoriji='$id' ORDER BY datum_stvaranja_kategorije ASC");
if(mysql_num_rows($upit))
{
while($redak=mysql_fetch_array($upit))
{
$indent.=($id==0)?'':' _ ';
echo $t;
blog_kategorije($redak['id_blog_kategorije'],$indent,$t);
$indent=substr($indent,0,1);
}
}
}
//Prikazuje
$t='<option value="'.$redak['id_blog_kategorije'].'">'.$indent.''.$redak['ime_kategorije'].'</option>';
echo'<select name="">'.blog_kategorije(0,'',$t).'</select>';
?>
<?php
require('sajt/Postavke.php'); //Poziva Postavke.php.
function blog_kategorije($id,$indent,$t)
{
$upit=mysql_query("SELECT id_blog_kategorije, ime_kategorije FROM blog_kategorije WHERE kategorija_u_kategoriji='$id' ORDER BY datum_stvaranja_kategorije ASC");
if(mysql_num_rows($upit))
{
while($redak=mysql_fetch_array($upit))
{
$indent.=($id==0)?'':' _ ';
echo $t;
blog_kategorije($redak['id_blog_kategorije'],$indent,$t);
$indent=substr($indent,0,1);
}
}
}
//Prikazuje
$t='<option value="'.$redak['id_blog_kategorije'].'">'.$indent.''.$redak['ime_kategorije'].'</option>';
echo'<select name="">'.blog_kategorije(0,'',$t).'</select>';
?>
Dodo sam još jedan argument "$t" i napravio upit zaprikazivanje u variabli $t.
Al neradi. Dali neko zna kako da ovo napravim.
HVALA!