Odeslání dat z formuláře ve Flashi 4 - II. - Grafika.cz - vše o počítačové grafice

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Soutěž

Sponzorem soutěže je:

IDIF

 

Jaký fotograf/ka získal/a cenu za nejpopulárnější příspěvek v Nikon Photo Contest?

V dnešní soutěži hrajeme o:



Webdesign

Odeslání dat z formuláře ve Flashi 4 - II.

16. února 2001, 00.00 | Dokončení dvoudílného seriálu o odesílání dat z formuláře vytvořeného ve Flashi 4. Tato část se zabývá scriptováním.

Takže formulář máme téměř hotov. Zbývá dodat scripty jednotlivým tlačítkům:

Nejdříve dodáme scripty tlačítkům v hlavní scéně. Nastavíme se tedy na první rámeček vrstvy "hlavní". Pravým kliknutím na jednotlivá tlačítka si vyvoláme kontextovou nabídku a v ní zvolíme PROPERTIES-ACTIONS-+ .....

..... kde navolíme script:

On (Release)

Go to Next Frame

Play

Set Variable: "tema" = "Zvolen Button 1"

End On

Tento script zajistí, že po kliknutí - puštění - tlačítka (On(Release)) přejde animace na další rámeček (Go to Next Frame), tam začne hrát dál (Play) a do textového pole "tema" se zapíše "Zvolen Button 1" (Set Variable:"tema"="Zvolen Button 1").

Stejný script napíšeme také do dalších tlačítek, ovšem s tím rozdílem, že u tlačítka "Button 2" bude (Set Variable .... "Zvolen Button 2") a u tlačítka "Button 3" bude (Set .... "Zvolen Button 3").

Nyní musíme "oscriptovat" tlačítka "Zpět na nabídku" a "Odešli".

Nastavíme se na 15. rámeček vrstvy "pošta", kde si obvyklým způsobem dodáme tlačítku "Zpět na nabídku" script:

On (Release)

Set Variable: "vzkaz" = ""

Set Variable: "od" = ""

Go to and Stop (1)

End On

Tento script zajistí, že po stisku tohoto tlačítka přejde animace na rámeček č. 1, kde se zastaví a přitom do polí "vzkaz" a "od" nic nenapíše, resp. vymaže to, co by tam mohlo být. To je důležité z toho důvodu, že bychom při psaní např. druhé zprávy otevřeli formulář a v něm by byl text zprávy již odeslané, neboť textová pole by si to pamatovala.

Jsme stále na 15. rámečku vrstvy "pošta". Tlačítko "Odešli" si oscriptujeme takto:

On (Release)

If (vzkaz ne "" or od ne "")

Get URL ("mail.php", window="_blank", vars=POST)

Set Variable: "vzkaz" = "" Set Variable: "od" = ""

Go to and Stop (1)

Else

Set Variable: "nemail" = "Zkontrolujte, prosím, je-li správně zadána vaše e-mailová adresa."

Go to Next Frame

End If

End On

Tak ... toto je v podstatě nejdůležitější script celého našeho díla. Zajišťuje, že pokud v poli "vzkaz" nebo "od" něco je (If (vzkaz ne"" ...), což udává značka "ne", která znamená NOT EQUALS, tedy v našem případě ... neobsahuje nic ..., tak formulář zavolá externí soubor MAIL.PHP, tedy script pro odeslání formuláře a zároveň vyčistí pole "vzkaz" a "od". Přejde pak na rámeček č. 1, kde se zastaví. V případě, že je pole "vzkaz" nebo "od" prázdné, tak se do pole "nemail" vepíše varování (Zkontrolujte, prosím ...) a přejde na další rámeček. Celé je to v podstatě založené na podmínce If ... Else ...

Totožný script také vepíšeme do tlačítka "odešli" na rámečku č. 16 ve vrstvě "pošta bad 1", ovšem změníme v řádku Set Variable ... větu "Zkontrolujte, prosím ..." na větu " Něco je stále zadáno špatně!". Toto dá uživateli najevo, že pokud chce odeslat prázdný formulář, tak to nepůjde. Stejným způsobem vyplníme script do tlačítka "odešli" na rámečku č. 17 ve vrstvě "pošta bad 2", kde pro změnu vepíšeme do řádku Set Variable .. "Problém stále trvá. Zkuste to ještě jednou!" a řádek, kde je původně "Go to Next Frame" změníme na " Go to and Stop (16)". Výsledek bude ten, že pokud uživatel nevyplní ve formuláři ani řádek, nebude odeslán a v případě, že se bude pořád pokoušet klikat na "odešli" tak se mu nejdříve zobrazí "Zkontrolujte ...", potom "Něco je stále ...." a nakonec "Problém stále trvá ...". V případě, že uživatel stiskne tlačítko odešli ještě jednou - nebo i vícekrát - tak se bude pořád "motat" mezi těmito dvěma posledními upozorněními, resp. rámečky 16 a 17 a bude ve finále nucen stisknout "Zpět na nabídku".

Pořád však nemáme "oscriptovány" tlačítka "Zpět na nabídku" ve vrstvách "pošta bad 1" a "pošta bad 2". Nastavíme se proto na rámeček č. 16 ve vrstvě "pošta bad 1" a dodáme tlačítku script:

On (Release)

Go to and Stop (1)

End On

K tomu myslím není co dodávat. Stejný script vepíšeme také na rámečku 17 ve vrstvě "pošta bad 2".

A je to.

Je jasné, že tento formulář má i své chyby, jako např. to, že uživatel je sice nucen do něj před odesláním něco napsat, ale může to být cokoliv, tedy nefunguje zde kontrola @ v e-mailu apod., ale jako ukázka toho, co je ve flashi možné, je to myslím optimální. Chci také upozornit, že jsem z výše zmiňovaného scriptu vyjmul odvolávku na mail.php, neboť jsem ho k tomuto tutorialu nepřikládal, a proto by to stejně nefungovalo. Pro zájemce zde však uvedu i php script, který vypadal takto:

<?php

Mail ("",$tema,$vzkaz,"From: $od");

?>

Zkušení PHP, CGI či ASP programátoři jistě přijdou na něco lepšího ... ale to já nejsem.

... zdroják si ale můžete stáhnout ZDE

Obsah seriálu (více o seriálu):

Tématické zařazení:

 » Rubriky  » Go verze  

 » Rubriky  » Webdesign  

 

 

 

Poptávka bazar

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: