Autor Zpráva
emissary
Profil

function CecDate($month='', $day='', $year='') {
	if ($month != "" || $day != "" || $year != "") {
		if (!checkdate($month, $day, $year)) {
			
		return '';
		}
		else {
		return array ($month, $day, $year);
			}
	}
}
		

				
		if (CecDate($month, $day, $year)) {
				
		if (!empty($day)) {  }
				else {
					echo "Nespr8vnz den";
					$background_day = "#FFC";}
	  
		if (!empty($month)) {  }
				else {
					echo "Nespr8vnz mesiac";
					$background_month = "#FFC";}
       
		if (!empty($year)) {   }
                else {
					echo "Nespr8vnz rok";
					$background_year = "#FFC";}
		} else {echo "vsetko je ok"; }

		if (!empty($email)) {  }
				else {
					$error_email = "Chybný email";
					$background_email = "#FFC";}
		


Zdravím Vás, neviete mi niekto poradiť, ako mám spojazdniť kontrolu dátumu? Neviem si s tým rady a už som dosť kombinácii vyskúšal. V PHP som začiatočník.

"bool checkdate ( int $month , int $day , int $year )

Checks the validity of the date formed by the arguments. A date is considered valid if each parameter is properly defined. "
AM_
Profil
souvisí s tím opravdu celých 187 řádků kódu, kterými jsi nás obdařil? (ne.)
co přesně neumíš? z tvého vágního popisu není jasné, co se považuje za validní datum, natož teprve s čím máš problém (jestli porovnat dvě čísla nebo zjistit jestli je něco číslo nebo tak...)
emissary
Profil
AM:
už som to skresal.... :) Nefunguje mi to... :( a neviem ako mám skontrolovat datum... :( tak aby bol reálny....
Laman
Profil
taky mi není zcela jasné, kde je problém, ale pro kontrolu platnosti data by mi připadalo postačující prosté checkdate:

if(!checkdate($month,$day,$year)){echo("Neplatné datum.");}

u většiny "sporných" dat stejně nepoznáš, která část je chybná - co je špatně třeba na 29. 2. 2001?

leda tak ještě přidat if($month>12){...} a if($day>31){...} ale to se mi zdá zbytečné

abys dostal lepší odpověď, musíš nám dát lepší otázku - co přesně má tvůj kód dělat, co přesně ti na něm nefunguje...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0