示例#1
0
function mycheckdate($datestr, $optional = 0, $fmin = '01.01.1902', $fmax = '31.12.2037')
{
    $datestr = trim($datestr);
    if ($optional == 1 and $datestr == '') {
        return '';
    }
    if ($optional == 0 and $datestr == '') {
        return 'ѕоле даты не может быть пустым';
    }
    if (!preg_match('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', $datestr, $matches)) {
        return '‘ормат даты DD.MM.YYYY';
    }
    if (!checkdate($matches[2], $matches[1], $matches[3])) {
        return 'Ќеверна¤ дата';
    }
    $data = DMSQL($datestr);
    $dmin = DMSQL($fmin);
    $dmax = DMSQL($fmax);
    if ($dmin > $data or $data > $dmax) {
        return 'ƒата выходит за диапазон ' . $fmin . ' - ' . $fmax;
    }
    return '';
}
示例#2
0
require_once 'cfg.php';
if (isset($_POST[buttOK])) {
    $date1 = $_POST[date1];
    $date2 = $_POST[date2];
    $smarty->assign('date1', $date1);
    $smarty->assign('date2', $date2);
    $smarty->assign('lhead', 'Дни рожления');
    $smarty->assign('laction', 'report4.php');
    $err = array();
    $errdate = mycheckdate($date1, 0, '01.01.1915', '31.12.2010');
    if ($errdate != '') {
        $err[date1] = $errdate;
    }
    $errdate = mycheckdate($date2, 0, '01.01.1915', '31.12.2010');
    if ($errdate != '') {
        $err[date2] = $errdate;
    }
    if (sizeof($err) == 0) {
        $params = array(DMSQL($date1), DMSQL($date2));
        $query1 = "select s.*, f.name faculty_name, g.name group_name\n    from student s\n    join faculty f on f.id = s.faculty_id\n    join `group` g on g.id = s.group_id\n    where s.birthdate between ? and ? \n    order by s.birthdate";
        $rs = $dbcnx->Execute($query1, $params);
        $db = $rs->GetArray();
        $smarty->assign('db', $db);
        $smarty->display('report4.tpl');
        exit;
    }
} else {
    // 1-й показ формы
}
$smarty->assign('err', $err);
$smarty->display('daterange.tpl');