datepicker 시작일과 종료일 설정시 사용하기 좋은 팁

웹프로그래밍을 하다보면 가끔 시작일과 종료일을 입력 받는 프로그램을 제작 하곤 한다. 사용자에게 날짜를 입력 받아야 하는데 텍스트박스만 떡하니 나두면 사용자가 제대로 된 데이터를 입력하지 않아 에러가 발생 될수 있다. 이럴 경우를 대비하여 보통 달력을 띄우거나 셀렉트박스로 만들게 되는데 셀렉트박스 보다는 jquery ui에서 지원하는 datepicker를 이용하는게 훨씬 쉬울것이다. datepicker 를 이용하면 사용자에게 날짜를 입력 받는 것이 너무나도 쉽다. 하지만 시작일과 종료일을 받아야 하는 상황에서 사용자가 시작일을 종료일보다 뒤의 날짜를 선택하거나 종요일을 시작일 보다 앞의 날짜를 선택한다면 원하는 결과를 가져올수 없을 것이다. 그럼 datepicker 로 시작일을 선택할때 종료일보다 나중의 날은 선택 할수 없게 하고, 종료일을 선택할때는 시작일 이후로만 선택 할수 있게 한다면? Continue reading datepicker 시작일과 종료일 설정시 사용하기 좋은 팁

매주의 시작일을 일요일로 정하고 지난주 일요일과 토요일을 구해 오는 함수

<?php $ymd = $_GET[ymd] ? $_GET[ymd] : date(“Y-m-d”); $symd = $_GET[symd] ? $_GET[symd] : date(“Y-m-d”, strtotime(“-1 years”, time())); $page = $_GET[page] ? $_GET[page] : 1; function lastSunToSat($ymd) { $time = strtotime($ymd); $today = date(“Y-m-d”, $time); $tday = date(“w”, $time); if($tday) $Sun = -2; else $Sun = -1; $last[Sun] = strtotime(“{$Sun} Sunday”, $time); $last[Sat] = strtotime(“previous Saturday”, $time); $last[Sun_ymd] = date(“Y-m-d”, $last[Sun]); $last[Sat_ymd] = date(“Y-m-d”, $last[Sat]); return $last; } $last = lastSunToSat($ymd); ?> <form> <input type=”text” name=”ymd” value=”<?=$ymd?>” /> <input type=”submit” value=”전송” /> </form> <? echo “오늘 : “; echo $ymd.”<br />”; ?> 지난주 일요일 : <?=date(“Y-m-d”, $last[Sun]);?><br /> 지난주 토요일 Continue reading 매주의 시작일을 일요일로 정하고 지난주 일요일과 토요일을 구해 오는 함수

시작일과 종요일을 가지고 있는 레코드를 시작일과 종요일로 검색해서 가져오기

DB 테이블에 시작일과 종료일을 기록하고 있을때 시작일과 종요일을 사용하여 검색 할때 시작일, 종료일을 포함하고 있는 모든 레코드를 가져오도록 한다.   예) 레코드1 : 2012-01-01~2012-02-16 레코드2 : 2012-02-01~2012-08-31 검색조건 : 2012-01-01~2012-01-30 결과 : 레코드1 만 출력 검색조건 : 2011-12-01~2011-12-30 결과 : 결과 없음 검색조건 : 2012-02-01~2012-02-28 결과 : 레코드1,2 출력 검색조건 : 2012-03-01~2012-04-01 결과 : 레코드2만 출력 검색조건 : 2012-09-01~2012-09-30 결과 : 결과 없음   위와 같은 결과물을 얻기 위한 조건문 wr_4 = 시작일 wr_5 = 종요일   (('$StartDate' <= wr_4 AND '{$EndDate}' >= wr_4) OR ('{$StartDate}' <= wr_5 AND '{$EndDate}' >= wr_5) OR (wr_4 <= '{$EndDate}' AND wr_5 >= '{$EndDate}')) Continue reading 시작일과 종요일을 가지고 있는 레코드를 시작일과 종요일로 검색해서 가져오기