Links ::  | DEV web management system | Katalóg | Webhosting | Recepty
  
 Index | Registrácia | Hľadať | Galéria | BoardNeprihlásený užívateľ  //Utorok, 21. Novembra 2017 
Navigation
Index
Top 10 autorov
Top 20 článkov
Hľadať
Galéria

Zones
Asp.(NET)
C/C++
Flash
Grafika+Design
Hardware
Hry
Html/Css/Xml
Java
Linux
Networks
Operačný systém
Pascal/Delphi
PHP
Security
Software
SQL
Visual Basic
Wap/Wml
Windows
Zóna iné

Links
Script index Interval.cz Pc.sk Regedit.sk TipyaTriky.sk Builder.cz Asp.cz Živě.sk Zoznam.sk Code.box.sk Root.cz Quant&Financial

Odkazy

Sessions
Stránky Developer.sk si práve číta 312 čitateľov, z toho je 0 zaregistrovaných

BackEnd
Odkazy na nové články je možné preberať pomocou backend.php

kuk

    Kontrola správnosti zadania dátumu vo formulári

Pri personalizácii a preberaní údajov z formulárov je niekedy viac, inokedy menej dôležité presné vyplnenie jednotlivých osobných, ale aj iných údajov, ktoré je v mnohých prípadoch dosť problematické. Dnes si ukážeme ako overiť pomocou jednoduchého scriptu formát dátumu vo formulári.


Kontrola správnosti zadávnia udájov vo formulároch je dôležitou súčasťou spätnej kontroly pri odosielaní údajov klientov serveru a jej spätné vyhodnocovanie dokáže ušetriť veľa práce. Najjednoduchším riešení je ošetrenie týchto údajov priamo u klienta jenoduchým JavaScriptom. Ako teda na to?

Vytvoríme si funkciu isValidDate(dateStr) a postupne budeme testovať správnosť formátu a jednotlivých polí dátumu. Čiže správnosť počtu mesiacov, dní, formát roku, počet dní v jednotlivých mesiacoch a pod.

<SCRIPT LANGUAGE="JavaScript">

<!-- Zaciatok
function isValidDate(dateStr) {
// Vyberte si z nasledujúcich formátov dátumu:
// MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY
// Taktiež treba správne oddeliť od seba dni, mesiace a roky

var datePat = /^(d{1,2})(/|-)(d{1,2})2(d{2}|d{4})$/;

// Ak použijeme štvormiestne číselný rok je potrebné nasledovné zadefinovanie:
// var datePat = /^(d{1,2})(/|-)(d{1,2})2(d{4})$/;

var matchArray = dateStr.match(datePat); //formát je v poriadku?
if (matchArray == null) {
alert("Dátum nemá správny formát :)")
return false;
}
month = matchArray[1]; // doplň dátum do premenných
day = matchArray[3];
year = matchArray[4];
if (month < 1 || month > 12) { // obmedzenie mesiacov
alert("Mesiac musí byť zadaný od 1 až 12.");
return false;
}
if (day < 1 || day > 31) {
alert("Dni musia byť v rozmedzí od 1 po 31.");
return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("Mesiac "+month+" nemá 31 dní!")
return false
}
if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day>29 || (day==29 && !isleap)) {
alert("Februar " + year + " namá " + day + " dní!");
return false;
   }
}
return true;  
}
// Koniec --> </script>

A samotné volanie scriptu na stránke bude vypadať nasledovne:

<form onSubmit="return isValidDate(this.date.value);">
Aký je dátum Vášho narodenia_?  <input type=text name=date size=10
maxlength=10> (vo formáte MM/DD/YYYY)  
<input type=submit value="Odošli dátum">
</form>



Autor : Developer, čítané 5106x, komentárov: 0
Hodnotenie :    |  Sobota, 8. Februára 2003

Pridať nový komentár/Komentáre
Vaše hodnotenie :   horšie  lepšie
Login
Login:
Heslo:

Hľadať
 
v článkoch
v diskusiach
v komentároch

Top read
PHP Coder

Priklady v C. 1.čast.

DEV web management system

Php a bezpečnosť skriptov

Autorun CD

Top discuss
Jednoduchý web formulár (ASP.NET)

Delphi seriál: (1.časť)

Velmi rychla grafika v Pascale

DEV web management system

Naša ikona
Páčia sa Vám naše stránky ? Ak áno, podporte nás prosím a umiestnite si na svoju stránku našu ikonku:





Copyright (c) Developer.sk, All rights reserved.
Powered by DEV web management system