Hlavnß strßnka · DiskusnΘ F≤rum · PracovnΘ prφle₧itosti · Zoznam

 Main Menu
o Hlavnß strßnka
o Zoznam tΘm
o Zoznam
o OdporuΦte nßs
o U₧φvatelia
o VaÜe konto
o Pridaj Φlßnok
o ètatistiky
o Top 10

 Reklama


 Developer Zone's
o Internet
o Tools
o Linux
o CGI Zone
o ASP Zone
o ASP.net
o PHP Zone
o CSS Zone
o JavaScript
o MySQL
o WAP / WML
o WML / WMLScript
o XML / XHTML
o Tipy a triky
o Best of web
o WebServers
o WebDesign
o Grafika

 Servis
o Vyh╛adßvanie
o F≤rum
o Workoffice
o Zoznam Φlßnkov
o Reklama
o Pridaj Φlßnok
o Pridaj novinku

NapφÜte nßm
Homepage Do favoritov

 LinkExpres
Interval.cz · Pc.sk
Builder.cz · Mobilmania
PCSvet.cz · Asp.cz
Webdnes · Äiv∞.sk
Zoznam.sk · Atlas.sk
Inzine.sk · PHP.sk
Agent.sk · Lupa.cz
Code.box.sk · Root.cz
Pixel32 · Grafika.cz

 forum.developer.sk
o F≤rum ::
o Markup languages
o ScriptovΘ jazyky
o CGI
o PHP/MySQL
o Perl
o Grafika
o Webservery
o HTML Editory
o Browsery
o Bookmarx
o ASP
o Vytvor tΘmu ::

 PracovnΘ prφle₧itosti
o Pon·kate prßcu?
o H╛adßte prßcu?

 Autori developer.sk
o Martin NemeΦek
o SvΣ¥o Straka
o Jany Masaryk
o Jozef Murφn

 
PHP [ 16. August 2000] - Andrej_Chu
Spracovßvanie dßt z formulßrov (PHP - Φas¥ 6)
Tak₧e som s╛·bil, ₧e sa dnes budeme venova¥ nejakej praktickej zßle₧itosti. Rozhodol som sa pre prφpad, kedy je PHP ve╛mi Φasto pou₧φvanΘ, a to spracovßvanie dßt z formulßrov.



Pri formulßroch v HTML dokumentoch poznßme dva typy odosielania dßt - POST a GET. Met≤da GET pripojφ dßta za nßzov skriptu, ktor² ich spracovßva. To sa uskutoΦnφ tak, ₧e za nßzov skriptu sa vlo₧φ otßznik, meno premennej a jej hodnota. Ukß₧ka:

 spracuj.php?cislo=5 

Takßta met≤da nie je prφliÜ vhodnß kv⌠li tomu, ₧e ka₧d², kto mß prφstup k dßtam vßÜho serveru, vidφ, ktorΘ strßnky si prezerßte a s nimi aj parametre met≤dy GET. V prφpade, ₧e s· v nich nejakΘ d⌠le₧itΘ premennΘ, ako naprφklad heslß, mohlo by to ma¥ ne₧iaduce ·Φinky. preto je preferovanejÜou met≤dou POST. V tomto prφpade je absol·tne bezpeΦnΘ prenßÜa¥ akΘko╛vek dßta, preto₧e tieto nie s· nijak vidite╛nΘ. OvÜem, niekedy sa m⌠₧ete dosta¥ do situßcie, ₧e budete musie¥ pou₧i¥ aj met≤du GET, vtedy si vÜak musφte dßva¥ pozor, ako ju implementujete. NajlepÜie je pou₧i¥ nejakΘ k≤dovanie.

Ak² typ met≤dy sa mß pou₧i¥ zadßte browseru vlo₧enφm parametru METHOD do tagu FORM a parametrom ACTION zasa urΦφte skript, ktor² mß dßta spracova¥:

<FORM ACTION="spracuj.php" METHOD=POST>

Ak chceme odovzdßva¥ hodnoty skriptu, musφme ich pomenuvßva¥ v celom formulßri. Ukß₧eme si jednoduch² typ formulßru, ktor² obsahuje Ütyri polo₧ky - meno, priezvisko, vek a e-mail:

<FORM ACTION="spracuj.php" METHOD=POST>
Meno: <INPUT TYPE=TEXT NAME="meno" SIZE=15 MAXLENGTH=25><BR>
Priezvisko: <INPUT TYPE=TEXT NAME="priezvisko" SIZE=15 MAXLENGTH=25><BR>
Vek: <INPUT TYPE=TEXT NAME="vek" SIZE=2 MAXLENGTH=3><BR>
E-mail: <INPUT TYPE=TEXT NAME="email" SIZE=15 MAXLENGTH=30><BR>
<INPUT TYPE=SUBMIT VALUE="OdoÜli">
</FORM>

Vyplnenφm formulßru a kliknutφm na tlaΦφtko "OdoÜli" odoÜleme dßta skriptu spracuj.php. Tento skript u₧ s nimi urobφ, Φo uznß za vhodnΘ, resp. Φo mu programßtor implementoval.

PHP skripty nerozliÜuj· rozdiely medzi dßtami zaslan²mi met≤dou GET a met≤dou POST. VÜetky odoslanΘ premennΘ s· aktivovanΘ automaticky a prφstupnΘ okam₧ite vßÜmu skriptu. Meno ka₧dej premennej zφskate pridanφm znaku $ pred meno, ktorΘ bolo pre polo₧ku urΦenΘ vo formulßri. To znamenß, ₧e hodnota polo₧ky "priezvisko" z formulßra bude ulo₧enß v premennej $priezvisko. ZφskanΘ ·daje m⌠₧eme vyu₧i¥ pod╛a potreby, naprφklad ich vypφsa¥:

 <?php // skript spracuj.php
echo "$meno $priezvisko mß $vek rokov. E-mail je $email."
?> 

╧alÜou mo₧nos¥ou je zasla¥ ·daje na e-mail. Na to nßm posl·₧i funkcia mail(). Mß Ütyri parametre, priΦom posledn² je nepovinn². Prv² parameter je adresßt, druh² predmet a tretφ samotnΘ telo e-mailu. Ak chcete, m⌠₧ete vyu₧i¥ nepovinn² Ütvrt² parameter, kde je mo₧nΘ Üpecifikova¥ prφdavnΘ parametre. Nßm staΦφ vyu₧i¥ zatia╛ prvΘ tri parametre, ak chcete aj ten Ütvrt², odpor·Φam pozrie¥ si manußl:

 <?php // skript spracuj.php
mail("meno@provider.sk","┌daje z formulßra","$meno $priezvisko mß $vek rokov. E-mail je $email.");
?> 

╚o vÜak prφpade, ₧e chceme z formulßru odosla¥ ·daje typu SELECT, kde ich m⌠₧e by¥ oznaΦen²ch viac? Vtedy musφme vyu₧i¥ polia. Formulßr m⌠₧e vyzera¥ napr. takto:

 <FORM ACTION="spracuj.php" METHOD=POST>
<SELECT NAME="zamestnanie[]" MULTIPLE SIZE=3> 
<OPTION VALUE="programßtor" NAME="zamestnanie[]">programßtor 
<OPTION VALUE="grafik" NAME="zamestnanie[]">grafik 
<OPTION VALUE="dizajnΘr" NAME="zamestnanie[]">dizajnΘr 
<OPTION VALUE="webmaster" NAME="zamestnanie[]">webmaster 
<OPTION VALUE="mana₧Θr" NAME="zamestnanie[]">mana₧Θr 
<OPTION VALUE="riadite╛" NAME="zamestnanie[]">riadite╛ 
<OPTION VALUE="asistent" NAME="zamestnanie[]">asistent 
</SELECT><BR>
<INPUT TYPE=SUBMIT VALUE="OdoÜli"> 
</FORM> 

V skripte spracuj.php budeme ma¥ pole $zamestnanie, ktorΘ bude ma¥ to╛ko prvkov, ko╛ko sme v menu oznaΦili, priΦom v ka₧dom prvku bude ulo₧enß jedna polo₧ka. Polo₧ky s· indexovanΘ od 0:

 <?php 
for ($i=0;$i<count($zamestnanie);$i++) //vypiseme obsah pola zamestnanie { 
echo $zamestnanie[$i]."<BR>n"; 
} 
?> 

Nabud·ce si ukß₧eme ako uklada¥ dßta do s·borov.

 
 PrφsluÜnΘ odkazy k tΘme
Viac o tΘme: PHP | InΘ Φlßnky od: Admin | PoÜli komentßr | Strßnka vhodnß na tlaΦ width=15 height=11  PoÜli tento Φlßnok priate╛ovi, znßmemu width=15 height=11


NajΦφtanejÜie Φlßnky PHP:
Nakonfigurujte si Windows na prßcu s PHP

╧alÜie Φlßnky v rubrike PHP:

 

"Spracovßvanie dßt z formulßrov (PHP - Φas¥ 6)" | Login / vytvor konto | 0 Komentßrov
Prah
Za obsah komentßrov je zodpovedn² u₧φvate╛, nie prevßdzkovate╛ t²chto strßnok.



AutorskΘ prßva: á ⌐1999 - 2001 Developer Zone [developer@developer.sk]

VÜetky Φlßnky s· vlastnφctvom autorov Developer Zone. VÜetky prßva vyhradenΘ. Strßnky Developer.sk s· vytvorenΘ pomocou PHP-Nuke.
Odkazy na novΘ Φlßnky je mo₧nΘ prebera¥ pomocou:Backend.php.