> mate nekdo vytvorenou, nebo vite kde roste sikovna promakana funkce v PHP > pro kontrolu datumu? Jde mi o to, aby vstupem fce bylo datum ve formatu > dd.mm.rrrr a vystupem rrrr-dd-mm. Tohle neni tezke vyrobit pomoci fce "ereg", > ale ja bych si predstavoval, aby to melo osetrene i situace jako napr. pri > zadani 27.6.2002 to samo doplnilo nulu pred cislo 6 a pak prehodilo do > rrrr-dd-mm..., nebo > vratilo jako chybu nesmyslna data (napr. 30.2.2002) > apod. > ...nechce se mi to delat... mate to nekdo? Diky Yd. Nakonec mi zbyla troska casu, takze tady mas tu svoji vytouzenou fci. Ale: skutecne chces vystup rrrr-dd-mm? To je trochu podivnej format... Ma-li to byt rrrr-mm-dd, tak si prehod 'm' a 'd' v date(). A taky to funguje jen v intervalu 1.2.1970 - 19.1.2038 vcetne. Kdybys to chtel mit univerzalni, budes muset zabrousit v manualu do sekce Calendar functions a trosku (vic) si to prostudovat.. :) Bacha na zalomeni. pako Paco. <!-- <html><head><title>Title</title></head><body><br><br><br><center> <form method=post> Datum ve tvaru dd.mm.rrrr: <input name=dat type=text size=12 value="<?echo isset($dat)?$dat:"";?>"> plati 1.2.1970 - 19.1.2038<br><input name=sent type=hidden value=1><br> <input type=submit><br><br><br> </form> <? error_reporting(E_ERROR); # ---------------------------- tady mas tu tvoji fci function mydate($dt){ $dt=trim($dt); if(!ereg("^([012][0-9])|[1-9]\.([01][0-9])|[1-9]\.[0-9]{4}$",$dt)) return false; list($d,$m,$y)=explode('.',$dt); if(!checkdate($m,$d,$y)) return false; return date("Y-d-m",mktime(0,0,0,$m,$d,$y)); } # ----------------------------------------------- if($sent){ $okdat=mydate($dat); echo"Ve tvaru rrrr-dd-mm: <b>"; echo $okdat?$okdat:"Chybny vstup","</b>"; } ?> <br></body></html> --> ______________________________________________________________________ Reklama: Nejenom anglicko-cesky slovnik: http://slovnik.seznam.cz
This archive was generated by hypermail 2.1.2 : 28. 06. 2002, 00:16 CEST