{"id":380,"date":"2024-02-05T10:35:58","date_gmt":"2024-02-05T09:35:58","guid":{"rendered":"https:\/\/gdm.sosthe.sk\/?page_id=380"},"modified":"2024-02-05T10:35:58","modified_gmt":"2024-02-05T09:35:58","slug":"cvicenie-c-11-vypocet-formularom","status":"publish","type":"page","link":"https:\/\/gdm.sosthe.sk\/?page_id=380","title":{"rendered":"Cvi\u010denie \u010d.11 &#8211; V\u00fdpo\u010det formul\u00e1rom"},"content":{"rendered":"<h3>T\u00e9ma:\u00a0V\u00fdpo\u010det formul\u00e1rom<\/h3>\n<h3>\u00daloha:\u00a0Vytvorte webov\u00fa str\u00e1nku s n\u00e1zvom\u00a0<em>vypocet.php<\/em>, ktor\u00e1 bude obsahova\u0165 skript, pomocou ktor\u00e9ho vytvor\u00edte s\u00fa\u010det, rozdiel, s\u00fa\u010din a podiel dvoch zadan\u00fdch \u010d\u00edsel ako v\u00a0predch\u00e1dzaj\u00facom cvi\u010den\u00ed. Rozdiel oproti cvi\u010deniu \u010d.10 bude v\u00a0tom, \u017ee \u010d\u00edsla zad\u00e1me pomocou formul\u00e1ra a v\u00fdstupom bude zobrazenie zadan\u00fdch dvoch \u010d\u00edsel a v\u00fdsledku jednotliv\u00fdch matematick\u00fdch oper\u00e1ci\u00ed.<\/h3>\n<h3>Podmienky:\u00a0Vytvoren\u00fd dokument umiestnite na svoj blog v\u00a0polo\u017eke PHP ako \u201eZadanie \u010d.11 V\u00fdpo\u010det formul\u00e1rom\u201c s\u00a0pln\u00fdm znen\u00edm \u00falohy a\u00a0odkazom na s\u00fabor\u00a0<em>vypocet.php<\/em><\/h3>\n<p><strong>Te\u00f3ria :<\/strong><\/p>\n<p>Jedna z najd\u00f4le\u017eitej\u0161\u00edch vlastnost\u00ed PHP je mo\u017enos\u0165 sprac\u00fava\u0165 d\u00e1ta z\u00edskan\u00e9 z HTML formul\u00e1rov (tag FORM). Va\u0161e skripty teraz kone\u010dne z\u00edskaj\u00fa pln\u00fd v\u00fdznam \u2013 budete m\u00f4c\u0165 reagova\u0165 na to, \u010do zad\u00e1 u\u017e\u00edvate\u013e (vol\u00e1 sa to tie\u017e \u201evstup\u201c).<\/p>\n<p>Najsk\u00f4r si vysvetl\u00edme, ako formul\u00e1re funguj\u00fa. Dajme tomu, \u017ee m\u00e1me s\u00fabor zadaj.html s jednoduch\u00fdm formul\u00e1rom. V \u0148om s\u00fa dva textov\u00e9 pol\u00ed\u010dka s jedn\u00fdm odosielac\u00edm tla\u010didlom:<\/p>\n<pre>&lt;form action=\"spocitaj.php\" method=\"get\"&gt; \r\nPrv\u00e9 \u010d\u00edslo: &lt;input name=\"prve\"&gt;&lt;br&gt; \r\nDruh\u00e9 \u010d\u00edslo: &lt;input name=\"druhe\"&gt;&lt;br&gt; \r\n&lt;input type=\"submit\" value=\"Spo\u010d\u00edtaj\"&gt;&lt;\/form&gt;<\/pre>\n<p>S\u00fabor spocitaj.php bude ma\u0165 za \u00falohu spo\u010d\u00edta\u0165 dva \u010d\u00edsla, zadan\u00e9 v textov\u00fdch pol\u00ed\u010dkach s n\u00e1zvami prve a druhe. Zatia\u013e v\u0161ak do\u0148ho nap\u00ed\u0161eme iba:<\/p>\n<pre>&lt;?php\u00a0?&gt;<\/pre>\n<p>Otvorte str\u00e1nku zadaj.php v prehliada\u010di a sk\u00faste zada\u0165 napr\u00edklad \u010d\u00edsla 5 a 8. Stla\u010dte odosielacie tla\u010didlo. Zobraz\u00ed sa pr\u00e1zdna str\u00e1nka, \u010do je v poriadku. V\u0161imnite si v\u0161ak adresu str\u00e1nky, ktor\u00e1 sa v\u00e1m pr\u00e1ve na\u010d\u00edtala:<\/p>\n<p>http:\/\/sosthe.info.tm\/~meno\/spocitaj.php?prve=5&#038;druhe=8<\/p>\n<p>Za n\u00e1zvom s\u00faboru nasleduje ot\u00e1znik a p\u00e1ry n\u00e1zov=hodnota, oddelen\u00e9 znakom &amp;. Podobn\u00fdm sp\u00f4sobom m\u00f4\u017eete pou\u017e\u00edva\u0165 adresy aj sami (bez pomoci formul\u00e1rov), napr.:<\/p>\n<pre>&lt;a href=\"zobraz.php?id=vlaky\"&gt;Vlaky&lt;\/a&gt;<\/pre>\n<p>E\u0161te mus\u00edme poznamena\u0165, \u017ee ak d\u00e1me tla\u010didlu meno a hodnotu, tieto \u00fadaje sa tie\u017e odo\u0161l\u00fa.<\/p>\n<p>Teraz si uk\u00e1\u017eeme, ako tieto \u00fadaje z\u00edska\u0165 v jazyku PHP. Ke\u010f\u017ee ako met\u00f3du formul\u00e1ra (atrib\u00fat METHOD) sme zvolili GET, k \u00fadajom budeme pristupova\u0165 pomocou po\u013ea\u00a0$_GET. To obsahuje prvky s indexmi nazvan\u00fdmi pod\u013ea atrib\u00fatov NAME jednotliv\u00fdch pol\u00ed\u010dok. Napr\u00edklad tento k\u00f3d vyp\u00ed\u0161e hodnotu pol\u00ed\u010dka prve:<\/p>\n<pre>&lt;?php echo $_GET['prve'];?&gt;<\/pre>\n<p>Ke\u010f\u017ee chceme hodnoty pol\u00ed\u010dok spo\u010d\u00edta\u0165, uprav\u00edme k\u00f3d takto:<\/p>\n<pre>&lt;?php echo $_GET['prve'] + $_GET['druhe'];?&gt;<\/pre>\n<p>Met\u00f3da GET, ktor\u00fa sme pou\u017eili, je vhodn\u00e1 pre akcie, ktor\u00e9 nemenia stav servera, iba zobrazuj\u00fa inform\u00e1cie. Ak by sme ju pou\u017eili napr. na ulo\u017eenie hlasu do ankety, pri ka\u017edej n\u00e1v\u0161teve na\u0161ich str\u00e1nok indexovac\u00edm robotom (napr. Googlebotom) by sa zaznamenal nov\u00fd hlas. Aj preto existuje met\u00f3da POST. Medzi nev\u00fdhody GET-u patr\u00ed tie\u017e obmedzen\u00e1 d\u013a\u017eka parametrov.<\/p>\n<p>Met\u00f3du POST pou\u017eijeme jednoducho \u2013 zmen\u00edme atrib\u00fat METHOD formul\u00e1ra. D\u00e1ta tu nie s\u00fa ukladan\u00e9 do adresy. Pristupujeme k nim pomocou po\u013ea\u00a0$_POST.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Postup pri pr\u00e1ci :\u00a0<\/strong>Upravte vzorov\u00fd skript tak, aby sp\u013a\u0148al podmienky \u00falohy<\/p>\n","protected":false},"excerpt":{"rendered":"<p>T\u00e9ma:\u00a0V\u00fdpo\u010det formul\u00e1rom \u00daloha:\u00a0Vytvorte webov\u00fa str\u00e1nku s n\u00e1zvom\u00a0vypocet.php, ktor\u00e1 bude obsahova\u0165 skript, pomocou ktor\u00e9ho vytvor\u00edte s\u00fa\u010det, rozdiel, s\u00fa\u010din a podiel dvoch zadan\u00fdch \u010d\u00edsel ako v\u00a0predch\u00e1dzaj\u00facom cvi\u010den\u00ed. Rozdiel oproti cvi\u010deniu \u010d.10 bude v\u00a0tom, \u017ee \u010d\u00edsla zad\u00e1me pomocou formul\u00e1ra a v\u00fdstupom bude zobrazenie zadan\u00fdch dvoch \u010d\u00edsel a v\u00fdsledku jednotliv\u00fdch matematick\u00fdch oper\u00e1ci\u00ed. Podmienky:\u00a0Vytvoren\u00fd dokument umiestnite na svoj blog v\u00a0polo\u017eke [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-380","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/gdm.sosthe.sk\/index.php?rest_route=\/wp\/v2\/pages\/380","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gdm.sosthe.sk\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/gdm.sosthe.sk\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/gdm.sosthe.sk\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gdm.sosthe.sk\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=380"}],"version-history":[{"count":1,"href":"https:\/\/gdm.sosthe.sk\/index.php?rest_route=\/wp\/v2\/pages\/380\/revisions"}],"predecessor-version":[{"id":381,"href":"https:\/\/gdm.sosthe.sk\/index.php?rest_route=\/wp\/v2\/pages\/380\/revisions\/381"}],"wp:attachment":[{"href":"https:\/\/gdm.sosthe.sk\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=380"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}