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

    Bylo vydáno Ubuntu 20.04.6 LTS, tj. šesté opravné vydání Ubuntu 20.04 LTS s kódovým názvem Focal Fossa. Přehled novinek v poznámkách k vydání a v přehledu změn.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | IT novinky

    Připojit neznámý USB flash disk do počítače může být nebezpečné. Dokonce může jít i o život. Někdo rozeslal ekvádorským novinářům USB flash disky, které po připojení do počítače explodují [BBC, Twitter].

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | Nová verze

    Byla vydána nová verze 7.4 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu.

    Ladislav Hagara | Komentářů: 0
    22.3. 21:55 | Nová verze

    Byla vydána verze 11.0 s kódovým jménem Aramo linuxové distribuce Trisquel GNU/Linux. Založena je na Ubuntu 22.04 LTS a podporována bude do roku 2027. Trisquel patří mezi svobodné distribuce doporučované Nadací pro svobodný software (FSF).

    Ladislav Hagara | Komentářů: 0
    22.3. 16:55 | IT novinky

    Mozilla založila startup Mozilla.ai a vložila do něj 30 milionů dolarů. Cílem je vývoj důvěryhodné, nezávislé a open source AI.

    Ladislav Hagara | Komentářů: 2
    22.3. 16:33 | Nová verze

    Po půl roce vývoje od vydání verze 43 bylo vydáno GNOME 44 s kódovým názvem Kuala Lumpur. Přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře. Krátké představení na YouTube.

    Ladislav Hagara | Komentářů: 22
    22.3. 13:33 | IT novinky

    Letošní Turingovou cenu (2022 ACM A.M. Turing Award) získal Bob Metcalfe za vynalezení, standardizaci a komercializaci Ethernetu.

    Ladislav Hagara | Komentářů: 0
    22.3. 07:00 | Nová verze

    Svobodná webová platforma pro sdílení a přehrávání videí PeerTube (Wikipedie) byla vydána ve verzi 5.1. Přehled novinek i s náhledy v oficiálním oznámení a na GitHubu.

    Ladislav Hagara | Komentářů: 0
    21.3. 18:22 | Nová verze

    Byla vydána Java 20 / JDK 20. Nových vlastností (JEP - JDK Enhancement Proposal) je 7. Nová Java / JDK vychází každých 6 měsíců. LTS verze je 17.

    Ladislav Hagara | Komentářů: 7
    21.3. 16:44 | IT novinky

    Google spustil konverzační AI Bard. Vyzkoušet lze zatím pouze ve Spojených státech a Spojeném království. Více v Bard FAQ.

    Ladislav Hagara | Komentářů: 2
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (10%)
    Celkem 301 hlasů
     Komentářů: 3, poslední včera 12:45
    Rozcestník


    Dotaz: Perl/CGI, while cyklus

    20.1.2008 18:57 majky8
    Perl/CGI, while cyklus
    Přečteno: 377×
    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á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.