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í
×
    včera 19:33 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch OTA-9 Focal, tj. deváté stabilní vydání založené na Ubuntu 20.04 Focal Fossa.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Nová verze

    Firma Murena představila (PeerTube, YouTube) novou verzi 3.0 mobilního operačního systému /e/OS (Wikipedie) založeného na Androidu a LineageOS bez aplikací a služeb od Googlu.

    Ladislav Hagara | Komentářů: 1
    včera 12:33 | Nová verze

    Byla vydána nová verze 5.12 svobodného multiplatformního softwaru pro konverzi a zpracování digitálních fotografií primárně ve formátů RAW RawTherapee (Wikipedie). Vedle zdrojových kódů je k dispozici také balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

    Ladislav Hagara | Komentářů: 0
    2.6. 19:33 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za květen (YouTube).

    Ladislav Hagara | Komentářů: 0
    2.6. 12:11 | Bezpečnostní upozornění

    Byly publikovány informace (txt) o zranitelnostech CVE-2025-5054 v Apport a CVE-2025-4598 v systemd-coredump. Lokální uživatel se může dostat k výpisu paměti programu (core dump) s SUID a přečíst si tak například /etc/shadow.

    Ladislav Hagara | Komentářů: 1
    2.6. 11:11 | IT novinky

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu aktuálně činí 2,69 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 30,95 %. Procesor AMD používá 68,77 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 3
    1.6. 23:22 | Nová verze

    Byla vydána verze 4.0 open source programu na kreslení grafů Veusz (Wikipedie). Přehled novinek v poznámkách k vydání. Proběhla portace na Qt 6.

    Ladislav Hagara | Komentářů: 0
    1.6. 11:44 | Nová verze

    Dibuja je jednoduchý kreslící program inspirovaný programy Paintbrush pro macOS a Malování pro Windows. Vydána byla verze 0.26.0.

    Ladislav Hagara | Komentářů: 2
    31.5. 23:33 | Nová verze

    Byla vydána nová verze 9.13 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    31.5. 21:44 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (55%)
     (33%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 193 hlasů
     Komentářů: 14, poslední 2.6. 08:30
    Rozcestník

    Dotaz: Výpis pole z databáze do SMARTY

    30.9.2013 16:02 vlado
    Výpis pole z databáze do SMARTY
    Přečteno: 1119×
    Ahoj řeim tiuhle věc :

    Našel jsem na netu tenhle způsob:

    v PHP

    $rows = array(); while ($rows[] = mysql_fetch_assoc($result)) {} $smarty->assign('rows', $rows);

    ve SMARTY {foreach from=$rows item=row} {$row.name} {/foreach}

    a chci se zeptat jestli je to ten nejlepší způsob... protože takhle se vlastně stanou ty cykly dva místo jednoho. Jeden na straně php když se plní pole tim while. while ($rows[] = mysql_fetch_assoc($result)) {} a pak ještě další for cyklus ve SMARTY {foreach from=$rows item=row}. Takhle se to má dělat?

    Jinde jsem dostal tuhle odpověď, ale bez dalšího vysvětlení to vůbec nechápu : "Vylepšené řešení je zabalit to do databázové vrstvy, která zpřístupní data přes nějakou metodu fetch() apod."

    Děkuji

    Řešení dotazu:


    Odpovědi

    Tarmaq avatar 30.9.2013 16:39 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    Ano, toto je spravne reseni. V sablone uz bys mel jen zpracovavat data, nikoliv fetchovat data z databaze.
    Don't panic!
    30.9.2013 17:00 vlado
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    No ale ten cyklus tam proběhne dvakrát prostě... bez smartů by tam proběhl jednou... kdybych dělal třeba cyklus s tisícovkou záznamů (coř nedělám ale příklad) tak to bude 1000 x 2 pro každej výpis.
    30.9.2013 17:20 Kit
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    Režie cyklů je proti režii smarty zcela zanedbatelná.
    30.9.2013 20:00 vlado
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    Dobře no. tak se tim tedy nebudu trápit. tak děkuji :)
    6.10.2013 19:41 Logik
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    Pokud bys chtěl optimalizovat, tak správná cesta je dostat data nikoli do pole, ale do lazy iterátoru, kterej se načte až v průběhu vytváření pole. Ale to má opodstatnění v okamžiku, kdy bys iteroval tisíce záznamů, u pohledu s deseti záznamy to opravdu nemá smysl řešit.
    10.10.2013 00:13 vlado
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    No jde spíš o to, že než bych potřeboval 1000 záznamů, tak že třeba budu volat řekněme 20 znáznamů, ale hodně často.
    Tarmaq avatar 10.10.2013 08:48 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    co znamena volat 20 zaznamu? 20x se dotazat databaze na stejna data? V tom pripade si ty data cachuj..
    Don't panic!
    Tarmaq avatar 10.10.2013 08:53 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    *co znamena volat hodne casto 20 zaznamu? hodne casto se dotazat databaze na stejna data? V tom pripade si ty data cachuj..
    Don't panic!
    11.10.2013 16:05 logik
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    U dvaceti záznamů je úplně jedno, jestli je nejdřív načteš a pak vyplivneš, nebo jestli je zpracováváš proudově. Samozřejmě, druhé výkonnější je, ale v celkové režii PHP to nepoznáš.
    Řešení 1× (Dejv)
    1.10.2013 20:41 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Výpis pole z databáze do SMARTY
    Ahoj.
    1. This extension is deprecated as of PHP 5.5.0, and will be removed in the future. viz http://php.net/manual/en/function.mysql-fetch-assoc.php
    2. PDOStatement::fetchAll viz http://www.php.net/manual/en/pdostatement.fetchall.php
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...

    Založit nové vláknoNahoru

    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.