Formuláre

Momentalne nejde. Je to dlhodobo neudrzovane, zrejme to uz ani nepojde.

Aby ste toto tu porozumeli, musíte mať približnú predstavu o tom, čo to je HTML formulár a ako funguje.

Čo to je

Formuláre do MoinMoin dorobil v rámci bakalárskej práce študent FEI STU Peter Bódi. Sú implementované ako sústava špeciálnych makier a akcií, ktoré umožňujú autorom wiki stránok (teda aj Vám) umiestniť na stránku formulár, ktorý slúži na zber údajov.

Na čo je to dobré

Typické aplikácie v našich podmienkach sú zrejme:

Pôvodný zdroj

Pôvodná dokumentácia a aj zdrojové kódy sú na týchto stránkach

Príklady

Toto je formulár, ktorý umožní zbierať komentáre od návštevníkov tejto stránky.

<<FormHeader(submitcsv,targetfile=komentare.csv)>>
|| Meno: || <<FormText(Meno,maxlength=20)>> ||
|| Priezvisko: || <<FormText(Priezvisko,maxlength=30)>> ||
|| Komentár: || <<FormTextarea(Komentar,rows=10,cols=20)>> ||
<<FormSubmit(Zaslať)>>
<<FormFooter()>>

Meno:

Priezvisko:

Komentár:

Nazbierané údaje sú uložené tu: komentare.csv

Ďalšie príklady

Ako sa to používa

Dokumentácia je pomerne strohá, preto sa tu pokúsim vysvetliť, o čo ide.

Ak chceme zbierať dáta nejakým formulárom musia nám byť dopredu jasné dve veci.

  1. Aké dáta chceme zbierať.
  2. Čo s nimi po zaslaní robiť.

Najprv sa venujme druhému bodu.

Čo s dátami po zaslaní

Bódiho systém umožňuje urobiť s dátami dve veci (aj obe naraz).

  1. Poslať ich v e-maile na nejakú adresu.
  2. Uložiť ich do súboru typu CSV, ktorý je v prílohe nejakej stránky.

FormHeader

Na určenie toho, čo s dátami po zaslaní, slúži makro FormHeader.

Akcia submitemail

Ak chceme obsah formulára posielať na adresu konferencia@math.sk, uvedieme takéto parametre

<<FormHeader(submitemail,targetemail=konferencia@math.sk>>

Akcia submitcsv

Ak cheme, aby sa dáta ukladali do súboru data.csv priloženého k tej stránke, na ktorej je formulár, uvedieme takéto parametre

<<FormHeader(submitcsv,targetfile=data.csv>>

To však znamená, že obsah súboru data.csv si môžu všetci záujemci prečítať, čo nie je vždy žiadúce.

Ak chceme, aby sa dáta ukladali do súboru data.csv priloženého k stránke !SecretData,uvedieme takéto parametre.

<<FormHeader(submitcsv,targetfile=data.csv,targetpage=SecretPage>>

SecretPage potom nastavíme ako internú stránku.

CSV súbory sa dajú importovať do OpenOffice, a uložiť potom ako XLS. Kódovanie diakritiky je UTF-8. Myslím, že to ide importovať aj priamo do Excelu.

Akcia submitattachment

Ak chceme od užívateľov abu nám nielen vyplnili formulár, ale aj zaslali nejaké súbory (vypracované zadania, abstrakty na konferenciu), musíme použiť akciu submitattachment.

Toto

<<FormHeader(submitcsv,submitattachment,targetfile=data.csv)>>

zabezpečí, že sa zaslané súbory uložia ako prílohy na stránku, na ktorej je formulár. Ostatné položky formulára sa uložia do prílohy data.csv.

Je možné aj v tomto prípade uviesť targetpage=SecretPage, dáta potom pôjdu tam.

Aké dáta chceme zbierať

Všetky podporované formulárové elementy sú tu (Formulár nie je funkčný, lebo nemá FormHeader ani FormFooter

|| First name: || <<FormText(First name,maxlength=50)>>                               ||
|| Last name:  || <<FormText(Last name,maxlength=50)>>                                ||
|| Gender:     || Male<<FormRadio(Gender, Male)>> Female<<FormRadio(Gender, Female)>> ||
|| Status:     || <<FormSelect(Status, Single, Married, Divorced)>>                   ||
|| Children:   || <<FormCheckbox(Children, Yes, No)>>                                 ||
|| Note:       || <<FormTextarea(Note, rows=10, cols=20)>>                            ||
|| Attachment: || <<FormUpload(Attachment)>>                                          ||

First name:

Last name:

Gender:

Male Female

Status:

Children:

Note:

Attachment:

KMaDGWiki: HelpSk/Formulare (last edited 2013-01-24 13:27:07 by jenca)