Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 5 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 18.05.10
Prihlásený: 11.04.12
Príspevky: 12
Témy: 5
Príspevok NapísalOffline : 26.08.2010 20:22

Ahojte, mozno stupidna otazka, ale sa s tym babrem uz dlho, a nenasiel som odpoved.

chcem vypisat celu cestu ku kategorii napr:

Hlavna stranka >> Hudobne nastroje >> bubny >> drevene
(ak su takto vnorene kategorie do seba)
(pricom mam ID poslednej kategorii (drevene)
Kód:
class Category {

   var $id_category;
   var $category;
   var $description;
   var $parent_id_category;

   function Category() {  //  constructor
      }

 function category_select($id_category){ // 

$sql=mysql_query("SELECT * FROM category WHERE (id_category='$id_category') limit 1");

      while ($myrow = mysql_fetch_array($sql)):
            $this->id_category[]=$id_category;
            $this->category[]=$myrow['category'];
            $this->description[]=$myrow['category_description'];
            $this->parent_id_category[]=$myrow['parent_id_category'];
      endwhile;


}

}

hlavna kategoria ma parent ID vzdy = 0

z toho vychadzam, ze chcem opakovat funkciu: category_select($parent_id_category) dovtedy, pokial sa mi parent_id_category nerovna 0

ked vnorim na koniec funkcie if ($parent_id_category>0) {
category_select($parent_id_category) ;

tak mi ten skript nedoducho zastane :(
tiez asi s tymto je problem: $this->category[] - pouzit to vo vnorenej funkcii (rekurzivne)

viete mi poradit ako na to ?
vrele dakujem za radu

//premenovane (stenley)


Offline

Správca fóra
Správca fóra
Vypis cesty v stromovej strukture

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 26.08.2010 21:07

http://www.pcforum.sk/post-vp303135.html#303135
http://dev.mysql.com/tech-resources/art ... -data.html







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 18.05.10
Prihlásený: 11.04.12
Príspevky: 12
Témy: 5
Príspevok Napísal autor témyOffline : 26.08.2010 22:37

dakujem. je to standardna rekurzivna funkcia.
mozno som napisal otazku skryto: preco mi nefunuje v triede?

ked pouzijem tieto premenne $this->category[]= tak to jednoducho nefunguje, a zbehne to len prvy krat, avsak nie rekurzivne.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2
Príspevok NapísalOffline : 26.08.2010 22:39

$tes je len aby som si to testol bez potreby databazy
sorac ak to nieje uplne ciste z pohladu PHP, nerobim v PHP takze mi so syntaxou pomahal pan GOOGLE :)

Kód:
<?php
 $tes = array(0=>array('id_category'=>0,'category'=>"Hlavna stranka",'description'=>"",'parent_id_category'=>null),
               1=>array('id_category'=>1,'category'=>"Hudobne nastroje",'description'=>"",'parent_id_category'=>'0'),
               2=>array('id_category'=>2,'category'=>"bubny",'description'=>"",'parent_id_category'=>1),
               3=>array('id_category'=>3,'category'=>"drevene",'description'=>"",'parent_id_category'=>2));

 class Category {
   var $id_category;
   var $category;
   var $description;
   var $parent_id_category;
   var $sql;

   function Category($sql) {  //  constructor
     $this->sql = $sql;
   }

   function category_select($id_category){ //
    //$sql=mysql_query("SELECT * FROM category WHERE (id_category='$id_category')");
    //$myrow = mysql_fetch_array($sql):
      $myrow = $this->sql[$id_category];
      $this->id_category[]=$id_category;
      $this->category[]=$myrow['category'];
      $this->description[]=$myrow['category_description'];
      $this->parent_id_category[]=$myrow['parent_id_category'];
      if ($myrow['parent_id_category']!=null) {
        $this->category_select($myrow['parent_id_category']);
      }

   
   }

   function showPath() {
     $path = "";
     foreach (array_reverse($this->category) as $val) {
       $path = $path.$val.">>";
     }
     echo $path;
   }

  }

  $test = new Category($tes);
  $test->category_select('3');
  $test->showPath();
?>


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 18.05.10
Prihlásený: 11.04.12
Príspevky: 12
Témy: 5
Príspevok Napísal autor témyOffline : 26.08.2010 23:47

chalani diky moc za ochotu. po tom co som si vsetko tu precital (a aj nieco nove sa priucil) som objavil svoju banalnu chybu.
vrele dakujem


Odpovedať na tému [ Príspevkov: 5 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. načítanie stromovej štruktúry

v Databázy

7

1032

26.10.2008 20:14

p360t Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Smernik v strukture C

v Assembler, C, C++, Pascal, Java

14

809

03.12.2008 17:32

neutronmind Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Súhrnné cesty ...

v Siete

0

327

14.07.2010 13:49

RomanB Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Strom z cesty

v PHP, ASP

1

315

05.02.2014 17:49

killer Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Tablet na cesty

v Mobilné zariadenia

13

609

23.11.2013 22:01

peroxid Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Notebook na cesty

v Notebooky a netbooky

2

472

31.10.2011 7:41

Cirky Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Změna cesty k mechanice

v Operačné systémy Microsoft

9

551

27.10.2008 12:15

pl4toon Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Prepisanie rel/abs cesty

v PHP, ASP

8

604

26.01.2009 12:25

M@tt21 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. zistenie cesty k suboru

v PHP, ASP

3

605

25.08.2008 17:25

php_user Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Notebook na cesty do 300€

v Notebooky a netbooky

1

253

30.12.2012 11:20

eXistenZ Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Patria staré autá na cesty?

[ Choď na stránku:Choď na stránku: 1, 2, 3, 4 ]

v Automobily, motorky

103

7197

27.08.2006 11:00

Fireblade46 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. NTB do 700€ na cesty

v Notebooky a netbooky

3

339

01.08.2012 14:20

mtxd Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. notebook na cesty do cca €500

v Notebooky a netbooky

3

322

09.12.2013 11:32

nescafe Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. 11, 12" notebook na cesty

v Notebooky a netbooky

7

687

23.04.2019 18:38

pepkopav Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. zistenie cesty a zapisanie do playlistu

v Ostatné

8

499

27.02.2009 19:17

dafo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Herny ntb na cesty 1800 e

[ Choď na stránku:Choď na stránku: 1, 2, 3, 4 ]

v Notebooky a netbooky

93

2337

16.02.2018 20:00

wiz Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra