Проверка даты?

Тема в разделе "PHP", создана пользователем forward11, 11 апр 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. forward11

    forward11 Создатель

    Регистр.:
    13 дек 2007
    Сообщения:
    33
    Симпатии:
    0
    Помогите разобрать с проверкой ввода даты типа 00.00.00:

    Код:
    $_POST["end_pokaz"]=trim($_POST["end_pokaz"]);
      if(!empty($_POST["end_pokaz"]))
      {
        if (!preg_match("/[0-9]+[0-9\.]+\.[0-9]+[0-9\.]+\.[0-9]+[0-9]/i", $_POST["end_pokaz"]))
        {
          $action = "";
          $error = $error."<LI>Неверно введена дата \n";
        }
      }
    :)
     
  2. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    собственно в чем проблема не понял :(

    Код:
    (\d{2}\.\d{2}\.\d{2,4})
    вообще это очень грубый вариант , и не учитывает массу проверок на валидность даты
     
  3. hexus81

    hexus81 Создатель

    Регистр.:
    14 окт 2007
    Сообщения:
    10
    Симпатии:
    1
    посмотри функцию parse_date() , она вернет false, если что-то не так
     
  4. Ter7

    Ter7 Писатель

    Регистр.:
    10 дек 2007
    Сообщения:
    1
    Симпатии:
    1
    с проверкой ввода даты типа 00.00.00


    bool checkdate ( int month, int day, int year )
    checkdate -- Проверяет правильность даты по грегорианскому календарю
    Возвращает TRUE если дата, заданная аргументами, является правильной; иначе возвращает FALSE. Дата считается правильной, если:
    • год в диапазоне от 1 до 32767 включительно
    • месяц в диапазоне от 1 до 12 включительно
    • day является допустимым номером дня для месяца, заданного аргументом month, принимая во внимание,что year может задавать високосный год.



    if(checkdate($month,$day,$year))
    {
    echo "Правильная дата";
    }
    else
    {
    echo "Неправильная дата!";
    }
     
Статус темы:
Закрыта.