abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:44 | IT novinky

    Největší kryptoměnová burza světa Binance se stala terčem útoku, při kterém podvodníci odcizili během několika minut kryptoměny v hodnotě přibližně 6,3 miliardy dolarů. Jedná se o největší kryptoměnovou krádež v historii, přibližně čtyřikrát větší než loňský útok na burzu Bybit. Binance se podařilo ve spolupráci s partnery zmrazit aspoň aktiva v hodnotě zhruba 3 miliard dolarů a slíbila, že veškeré ztráty pokryje z vlastních prostředků.

    Ladislav Hagara | Komentářů: 3
    dnes 02:16 | Bezpečnostní upozornění

    Zranitelnost CVE-2026-98432 s CVSS 9.8 odhalila AI od společnosti Anthropic. Jedná se o kritickou chybu v implementaci MPTCP (multipath TCP). Debian vydal patche 16.10. a 22.10., ale např. Ubuntu je zatím bez opravy. Více informací na The Hacker News.

    Max | Komentářů: 14
    včera 23:22 | Zajímavý software

    Na Slovensku vznikla úplne nová rally hra, ktorá je zadarmo a funguje vo Windowse, Linuxe či na Macu. Greenie Rally má viac ako 50 tratí a vozidiel, šampionáty či turnaje. Má retro feeling a imituje automobilové hry z prelomu tisícročí. Vyskúšate prejsť všetky mapy na Škode 130RS?

    Stanislav Hoferek | Komentářů: 3
    včera 14:33 | Komunita

    Do základního systému NetBSD -current byl přidán nový editor atto jako alternativa k editorům vi a xedit.

    Ladislav Hagara | Komentářů: 1
    včera 14:11 | IT novinky

    Společnost System76 představila kompaktní 11litrový Thelio Prime Desktop. S procesorem AMD Ryzen 9000. S Pop!_OS 24.04 LTS s desktopovým prostředím COSMIC nebo Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Humor

    Čínská státní televize pozastavila vysílání španělské La Ligy a čínské internetové platformy omezily obsah s Kylianem Mbappém poté, co slavný fotbalista ve francouzském pořadu The Bridge mluvil o svém oblíbeném memu, v němž je jeho tvář vložena do portrétu zobrazujícího diktátora Mao Ce-tunga. 'Můj oblíbený mem je ten, na kterém dali můj obličej na čínského diktátora. To mě opravdu rozesmívá. S přáteli ho používám pořád' řekl,

    … více »
    Pendrekama do nich❗ | Komentářů: 7
    včera 13:22 | IT novinky

    Při příležitosti oslav Dne vzniku samostatného československého státu (28. října) byly uděleny medaile Za zásluhy tvůrci aplikace Záchranka Filipu Maleňákovi, vědci v oblasti umělé inteligence Tomáši Mikolovovi a Olze Štěpánkové, vědkyni zabývající se kybernetikou, robotikou a strojovým učením, průkopnici v oblastech výuky a využití umělé inteligence v medicínském inženýrství.

    Pendrekama do nich❗ | Komentářů: 7
    včera 01:33 | IT novinky

    Apple představil nový iPad mini, iMac s čipem M6, 14palcový MacBook Pro s čipem M6 a MacBook Pro s PROLED XDR displejem – první Mac s dotykovým ovládáním.

    Ladislav Hagara | Komentářů: 5
    28.10. 23:22 | Zajímavý projekt

    Nedávno představený projekt mapSTL.com řeší budoucnost. 𝕏: "Netušil jsem, kolik patentů na generování map existuje. Existují patenty na generování fantasy map 🫣. Cokoliv je na 3D tiskárnu a tvoří to produkt, bude to mít patenty. Tak bacha na to!" … více »

    Ladislav Hagara | Komentářů: 5
    28.10. 18:55 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.4 (𝕏). Přehled novinek a vylepšení v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (29%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2946 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: Jak na výpis položek ze stromu kategorie v PHP

    5.4.2014 13:05 JaN
    Jak na výpis položek ze stromu kategorie v PHP
    Přečteno: 1027×
    Zdravím. Mám v mysql nějaké kategorie a taky položky. Nevím ale jak vypsat položky ze všech kategorií které patří pod sebe. Pokud bude třeba aktivní kategorie "Sestavy", tak vypsat všechny položky taky z kategorie "Nove" a "AMD" a "Intel". Pokud bude aktivní "Sestavy > Nové", tak vypsat už jen kategorie "AMD" a "Intel". Atd.. Neporadí někdo? Děkuji
    kategorie mám
    
    cat_id    cat_name   cat_parent
    1         Sestavy    0
    2         Servery    0
    3         Nove       1
    4         Nove       2
    5         Použité    1
    6         Použité    2
    7         AMD        3
    8         Intel      3
    
    
    a položky mám
    
    item_id    item_name     cat_id
    1          Položka A     4
    2          Položka B     5
    3          Položka C     5
    4          Položka D     4
    5          Položka E     6
    6          Položka F     6
    7          Položka G     7
    8          Položka H     8

    Odpovědi

    Josef Kufner avatar 5.4.2014 14:42 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Přidej si do tabulky dva sloupečky typu int: tree_left a tree_right. Udělej nad nima index, aby to bylo rychlé a přečti si o nested sets.

    Pak ti stačí pro výběr podstromu prostý výběr všeho s tree_left mezi tree_left a tree_right kořene podstromu.
    Hello world ! Segmentation fault (core dumped)
    6.4.2014 12:28 JaN
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Ahoj.
    Udělej nad nima index, aby to bylo rychlé
    Udělej nad nima index ? Můžeš ještě trochu přiblížit ?
    Pak ti stačí pro výběr podstromu prostý výběr všeho s tree_left mezi tree_left a tree_right kořene podstromu.
    Tato věta mi nedává moc k pochopení, jelikož nejsem znalý dané problematiky. Můžeš prosím v podobě pro začátečníka?

    Děkuji
    Jendа avatar 6.4.2014 16:38 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Udělej nad nima index ? Můžeš ještě trochu přiblížit ?
    CREATE INDEX brm ON tabulka (sloupeček);
    Tato věta mi nedává moc k pochopení, jelikož nejsem znalý dané problematiky. Můžeš prosím v podobě pro začátečníka?
    Viděl jsi ten obrázek na Wikipedii? Myslím, že je z něj jasné, jak se takové věci vyptává na podmnožiny.
    7.4.2014 13:33 JaN
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Viděl jsi ten obrázek na Wikipedii?
    Ano, víděl, a dokážeš si představit přidat tam další kategorii? Počítání na dva dny :-(
    7.4.2014 14:55 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP

    I při tisících kategorií a na CPU z telefonu je to otázka sekundy.
    Pokud chceš rychle a dynamicky vytahovat kategorie, tak je to to správné.

    Jinak si můžeš zhodnotit sám - a pokud si líný, tak zkus hledat toto.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    7.4.2014 16:17 JaN
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Nepochopil jsi co jsem napsal ;-) Nemyslel jsem rychlost načítání/zpracování ale poukazoval jsem na to, že pokud mít v mysql nějaký strom a budu tam chtít přidat nějaké kategorie tak to znamená všechno přepočítat, což musím patrně udělat ručně. Tak že pokud tam budu mít cca 500 kategorií tak to udělám tak za dva dny, pokud se teda spíš neobjesím :-D Nebo jsem to nepochopil? Dělá se to jinak?
    7.4.2014 16:31 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP

    Já jo, ty ne - znovu: I při tisících kategorií a na CPU z telefonu je to otázka sekundy.

    Kdyby jsi si aspoň přečetl odkazovaný článek do konce, nemohl by jsi napsat, co jsi napsal. Nebo zkusil zapřemýšlet co máš hledat dle nápovědy v druhém odkazu.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    7.4.2014 18:45 JaN
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Četl jsem to, ale anglicky neumím, tak že jsem možná něco přehlédl.

    Stejně to je celý nějaké divné... Vytvořil jsem si tabulku "cat" V ní tyto 4 sloupce s daty
    Node	Left	Right	Depth
    Clothing	1	22	0
    Men's	        2	9	1
    Women's	        10	21	1
    Suits	        3	8	2
    Slacks	        4	5	3
    Jackets	        6	7	3
    Dresses	        11	16	2
    Skirts	        17	18	2
    Blouses	        19	20	2
    Evening Gowns	12	13	3
    Sun Dresses	14	15	3
    
    a při použití tohoto dotazu se mi nevypíše nic. Ani se nedivím, když tam žádné sloupce s názvy Child Tree Parent ani Given nemám :-(
    SELECT Child.Node, Child.LEFT, Child.RIGHT
    FROM Tree AS Child, Tree AS Parent
    WHERE
    	Child.Depth = Parent.Depth + 1
    	AND Child.LEFT > Parent.LEFT
    	AND Child.RIGHT < Parent.RIGHT
    	AND Parent.LEFT = 1  -- Given Parent Node Left Index
    7.4.2014 18:59 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP

    ¡Odkazoval jsem český text! Takže na to fakt kašleš…

    Dotaz je pro tabulku strom (Tree) a ty tam máš čičiny (cat), pokud to z toho nevyčteš, chce se to podívat na nějakou základní syntaxi SQL.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    7.4.2014 19:13 JaN
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Snažím se ani nevíš jak moc to potřebuji vyřešit :-( A co ty ostatní názvy Child Parent Given ? Ty mám vzít kde? Posílal jsi český odkaz to vím, ale na něco jiného, řeším ale tohle : https://en.wikipedia.org/wiki/Nested_set_model
    Jendа avatar 7.4.2014 20:01 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Najdi si nějakou příručku se základy SQL. Child a Parent jsou přejmenované tabulky (slovíčkem AS), slovo Given se vyskytuje pouze v komentáři.
    7.4.2014 20:08 JaN
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Určitě si něco najdu... Jinak už to běží, teda jestli se to tak dá nazvat, vypíšou se pouze dva názvy kategorie, žádný strom se ale nevypsal :-(
    7.4.2014 21:44 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP

    Snaha není koksovatelná.

    Když máš pocit, že jsem ti poslal něco jiného, tak to je pak těžké...

    Na závěr, myslím, že nemáš dostatek znalostí a přijde mi, že se po nic ani nepídíš, takže bych ti doporučil se zabývát mým druhým hintem a jí touto cestou.

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Jendа avatar 7.4.2014 19:56 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    > update `counter_ip` set id=id-100000
    ...
    Příkaz proběhl v pořádku, bylo změněno 8 190 záznamů. (0.126 s)
    Pentium III
    7.4.2014 20:07 JaN
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    ? Ty to taky používáš ten system?
    Jendа avatar 7.4.2014 20:41 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Ne, jen jsem ukazoval, že i na slabém počítači trvá update několika tisíc čísel zlomek sekundy - takže i když budeš mít tisíc kategorií, přidání další bude trvat chvilku.
    7.4.2014 21:06 JaN
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Aha, díky... a poradíš tedy prosím jak vypsat celý ten strom? Díky
    Jendа avatar 7.4.2014 21:26 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Napiš dotaz, ke kterému jsi zatím dospěl…
    7.4.2014 21:46 JaN
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    $stmt = $pdo->prepare('SELECT Child.Node, Child.LEFT, Child.RIGHT
                           FROM cat AS Child, cat AS Parent
                           WHERE
                           Child.Depth = Parent.Depth + 1
                           AND Child.LEFT > Parent.LEFT
                           AND Child.RIGHT < Parent.RIGHT
                           AND Parent.LEFT = 1  -- Given Parent Node Left Index');
    $stmt->execute();
    $rows = $stmt->fetchAll();
    foreach ($rows as $row) {
         echo $row['Node'];
    }
    Jendа avatar 7.4.2014 22:01 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Dělá to přesně to, co by mělo - vypíše děti kategorie č. 1. Jestli to chceš vypsat celé, tak
    SELECT Child.Node, Child.LEFT, Child.RIGHT, Child.depth
                           FROM cat AS Child, cat AS Parent
                           WHERE
                           Child.Depth = Parent.Depth + 1
                           AND Child.LEFT > Parent.LEFT
                           AND Child.RIGHT < Parent.RIGHT
    			order by Child.LEFT;
    Josef Kufner avatar 7.4.2014 22:15 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Btw, na tento způsob uložení stromu do SQL databáze už existuje kopec knihoven, které ty left a right umí spočítat a umí efektivně udělat insert či delete ze stromu. Konkrétní nedoporučím, neboť jsem to kdysi dělal podle toho odkazovaného návodu, ale na pár jsem omylem narazil, když jsem ten návod teď hledal.
    Hello world ! Segmentation fault (core dumped)
    7.4.2014 21:55 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Jak na výpis položek ze stromu kategorie v PHP
    Něco podobného jsem kdysi řešil a dospěl jsem k funkčnímu řešení. Ve vstupních datech je klasická "špatná" struktura pouze s odkazem na rodiče, výstupem je například strom diskuzního fóra v HTML.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.