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 21:22 | Pozvánky

    Oslavte vydání openSUSE Leap 16.1 s námi v Praze! Ve středu 4. listopadu 2026 (den po vydání Leapu 16.1) vás zveme na malou oslavu vydání openSUSE Leap 16.1 do pražské kanceláře SUSE. Připravili jsme pro vás dvě krátké přednášky: … více »

    lkocman | Komentářů: 0
    včera 16:44 | Bezpečnostní upozornění

    Dle plánu bylo PHP vydáno v nových verzích 8.5.12, 8.4.27, 8.3.36 a 8.2.35. Opraveny jsou kritické zranitelnosti CVE-2026-109618 a CVE-2026-109619 aneb PHP2Shell.

    Ladislav Hagara | Komentářů: 4
    včera 11:55 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-2.1 a 24.04-1.5. S opravou kritických zranitelností.

    Ladislav Hagara | Komentářů: 0
    včera 11:33 | IT novinky

    Společnost Škoda Auto zveřejnila na Printables bezplatné 3D modely příslušenství do svých vozů (držáky na nápoje, pomůcky pro vedení kabelů, mincovníky, háčky na USB kabely a čepice pro kapsy na zadních stranách opěradel sedadel, držáky na telefony a úchyty pro horní upevnění bezpečnostních pásů).

    Ladislav Hagara | Komentářů: 7
    včera 05:11 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 170 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Bezpečnostní upozornění

    Dnes v 16:00 (14:00 UTC) budou opraveny 2 kritické zranitelnosti s CVSS 9.2 v PHP.

    Ladislav Hagara | Komentářů: 7
    včera 01:37 | Bezpečnostní upozornění

    Nizozemská policie 13. října 2026 zabavila v datacentru Amsterdam Science Park server italského poskytovatele internetových služeb Autistici/Inventati (A/I), a to na základě americké žádosti o mezinárodní právní pomoc.… více »

    vencour | Komentářů: 10
    20.10. 20:47 | Bezpečnostní upozornění
    Hlášeny RCE v NGINX. Náprava dostupná. … více »
    vencour | Komentářů: 0
    20.10. 20:33 | IT novinky

    Do 26. října do 18:00 běží na Steamu přehlídka nadcházejících her Festival Steam Next | říjen 2026 (YouTube) doplněná demoverzemi, přenosy a dalšími aktivitami. Demoverze lze hrát zdarma.

    Ladislav Hagara | Komentářů: 0
    20.10. 20:22 | Zajímavý software

    Čínská technologická společnost DeepSeek zveřejnila na GitHubu svůj framework DeepInfer, nástroj pro efektivní offline inferenci svého modelu DeepSeek-V4.1-Flash ve velkém měřítku. Software běží na Linuxu a nativně podporuje akcelerátory Nvidia ale i čipy Huawei Ascend 950. Jedná se pouze o samotný inferenční engine, ne kompletní produkční službu. Zdrojový kód je dostupný pod licencí Apache 2.0.

    ❗Červivý Hřib krade❗ | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2888 hlasů
     Komentářů: 33, poslední 20.10. 23:44
    Rozcestník

    Dotaz: Perl/CGI, while cyklus

    20.1.2008 18:57 majky8
    Perl/CGI, while cyklus
    Přečteno: 566×
    Dobry den, predem se omlouvam za titulek ale nevim jak to vhodne pojmenovat :)

    K problemu, nedavno jsem http://www.abclinuxu.cz/forum/show/202896 tady resil neco podobneho ale reseni se k tomuhle nehodi... Mam kod stranky psane v perlu a potreboval bych, aby aby mi while cyklus vytvarel kus kodu do bunky. Vypada to takhle:
    sub articles {
    	while ( $odpoved = $dotaz->fetchrow_hashref() ) {
    	   $cgi->h2(
    		$cgi->a({-href=>"$host/articles.pl?page=$odpoved->{'id'}"},
    		"$odpoved->{'title'}",
    	           ),
    		),
    		$cgi->h3(
    	        "$odpoved->{'hlavicka'}",
    			),
    	    $cgi->a({-href=>"$host/articles.pl?page=$odpoved->{'id'}"},
    		"Pokracovat>>",
    	           ),
    	}
    
    }
    (pripojeni a dotaz je jeste pred podprogramem, vcetne execute(); ) Problem je v tom, ze tahle konstrukce nevraci nic, ani chybovou hlasku. Pokud to vlozim primo do tela zpravy bez podprogramu, tak mi to zahlasi syntax error u while. Kdyz to podobne napisu do normalniho scriptu a ne CGI, spustim, tak jde vsechno v poradku. Googlil jsem celkem dlouho ale nic co by mi nejak pomohlo to vyresit. Ikdyz vim, ze jsem v tomhle docela lamka, tak i presto, nasla by se nejaka dobra duse co mi pomuze? :)

    Odpovědi

    21.1.2008 20:29 mlz
    Rozbalit Rozbalit vše Re: Perl/CGI, while cyklus
    Řekl bych, že chybí na začátku print. A tiše předpokládám, že nechybí $cgi=new CGI :-)

    Jo a předpokládám, že FETCH vrací nějaká data (ten cykl není prázdný)

    Mýlím-li se, ten skript by měl se dát spouštět pomocí pouze perlu, argumenty ve tvaru PARAM=VALUE a zajímal by mne jeho výstup
    21.1.2008 20:47 majky8
    Rozbalit Rozbalit vše Re: Perl/CGI, while cyklus
    $cgi=new CGI; ani print nechybi, na zacatku toho scriptu vsechno je, fetch vraci data z databaze, kdyz je posilam do souboru, tak to funguje, nefunguje ale vystup do kodu a nevim jak to zprovoznit... Kdyz to je jako podprogram, tak to nevyda vubec nic, stranka se sice zobrazi ale td nic neobsahuje, volani podprogramu:
    ...
    $cgi->td({-valign=>"top",-width=>717,-height=>819,-align=>"left"},
    	&articles,    
    ), 
    ...
    kdyz misto &articles, vlozim while cyklus, tak to da SYNTAX ERROR na radku kde je while
    21.1.2008 21:05 maleprase | skóre: 28
    Rozbalit Rozbalit vše Re: Perl/CGI, while cyklus
    podle mne je problem v tom ze tam kam davas &articles by melo byt pole takze sub articles() by mel vracet pole.

    tvoje nic nevraci takze se vyhodnoti jako td({...}, []}

    ps: comp.perl.beginners je na tyhle dotazy urcite lepsi ...
    22.1.2008 16:23 majky8
    Rozbalit Rozbalit vše Re: Perl/CGI, while cyklus
    jestli to dobre chapu tak jsem podle toho zkusil cely vystup co provadi while ulozit do pole a to vracet, jenomze to zase vraci jako normalni text a ne jako kus kodu stranky
    22.1.2008 16:36 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Perl/CGI, while cyklus
    a)
    sub ... {
      my @retval;
    
      while (...) {
        push @retval, $cgi->h2 (), $cgi->h3, ...;
      }
    
      return @retval;
    }
    
    b) použi HTML::Template / Template::Toolkit ; popr Catalyst na všetko dohromady
    22.1.2008 16:50 majky8
    Rozbalit Rozbalit vše Re: Perl/CGI, while cyklus
    varianta a) mi pomohla, dekuji za snahu ;)

    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.