Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kod do sprawdzania daty., problem przy blednym wprowadzniu danych.
dobryvinyl.com
post
Post #1





Grupa: Zarejestrowani
Postów: 126
Pomógł: 0
Dołączył: 1.11.2004

Ostrzeżenie: (0%)
-----


Witam,

mam nastepujacy problem.

  1. <?php
  2. if (empty($data_urodzenia))
  3. {
  4. errormsg("Wypełnij pole data!");
  5. $error=tak;
  6.  
  7. }elseif(!checkdate(substr($data_urodzenia, 5, 2), substr($data_urodzenia, 8, 2), substr($data_urodzenia, 0, 4)) AND strlen($data_urodzenia) != 10){
  8. errormsg("Data nie jest poprawna! Prawidłowy format to: YYYY-MM-DD");
  9. $error=tak;
  10. }else{
  11. }
  12. ?>


Przy wprowadzeniu daty np: 2004-11-05 wszystko jest ok. Wystarczy jednak ze uzytkownik wpisze 204-11-05 a juz wyskoczy taki błąd:

Kod
Warning: checkdate() expects parameter 3 to be long, string given



jak uniknac takiego bledy?

Dzikuje z gory za odpowiedzi.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Levabul
post
Post #2





Grupa: Zarejestrowani
Postów: 197
Pomógł: 0
Dołączył: 11.07.2005

Ostrzeżenie: (0%)
-----


  1. <?php
  2.  
  3. $data = explode ('-', $data_urodzenia);
  4. if (empty($data_urodzenia))
  5. {
  6. errormsg("Wypełnij pole data!");
  7. $error=tak;
  8.  
  9. }elseif(!checkdate($data[1], $data[2], $data[0]) AND strlen($data_urodzenia) != 10){
  10. errormsg("Data nie jest poprawna! Prawidłowy format to: YYYY-MM-DD");
  11. $error=tak;
  12. }else{
  13. }
  14.  
  15. ?>


Pisane na sucho więc sprawdź czy działa
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 02:24