공휴일 확인 방법

공휴일 확인 방법

QA

공휴일 확인 방법

본문

 
 
$today = date("Y-m-d");
 
$w = date("w");
            $w_txt = "";
            switch($w) {
                case "0" :
                    $w_txt = "일요일";
                    break;
                case "1" :
                    $w_txt = "월요일";
                    break;
                case "2" :
                    $w_txt = "화요일";
                    break;
                case "3" :
                    $w_txt = "수요일";
                    break;
                case "4" :
                    $w_txt = "목요일";
                    break;
                case "5" :
                    $w_txt = "금요일";
                    break;
                case "6" :
                    $w_txt = "토요일";
                    break;
            }
 

 

위 소스에다가

 

              case "7" :
                    $w_txt = "공휴일";
                    break;

 

공휴일을 추가 하고 싶습니다..

가능할까요?

 

cccc 테이블에 아래 이미지처럼 공휴일이 들어가 있습니다

2039449303_1743641184.5954.jpg

이 질문에 댓글 쓰기 :

답변 3

$today = date("Y-m-d");
$holiday_query = "SELECT 2222 FROM cccc WHERE 1111 = '$today'";
$holiday_result = mysqli_query($conn, $holiday_query);
if (mysqli_num_rows($holiday_result) > 0) {
$w_txt = "공휴일";
} else {
    $w = date("w");
    $w_txt = "";
    switch($w) {
        case "0":
            $w_txt = "일요일";
            break;
        case "1":
            $w_txt = "월요일";
            break;
        case "2":
            $w_txt = "화요일";
            break;
        case "3":
            $w_txt = "수요일";
            break;
        case "4":
            $w_txt = "목요일";
            break;
        case "5":
            $w_txt = "금요일";
            break;
        case "6":
            $w_txt = "토요일";
            break;
    }
}

echo $w_txt;

 

이렇게 해보시겠어요 ?

항상 감사합니다
오류가 납니다.

오늘 날짜를 1111 컬럼에 추가 해서  해봤는데
목요일 이 리턴이 되네요
공휴일 이 리턴이 되야 합니다 ㅠㅠ

평소에는 요일이 리턴이 되고
공휴일에는 공휴일이 리턴이 되야합니다

978180634_1743646093.2651.png

 

978180634_1743646111.6387.png

 

테스트 해보니 잘 됩니다.

 

아래 코드로 사용해보세요

 


$today = date("Y-m-d");

$holiday_query = "SELECT `2222` FROM `cccc` WHERE `1111` = '$today'";
$holiday_result = mysqli_query($conn, $holiday_query);

if ($holiday_result && mysqli_num_rows($holiday_result) > 0) {
    $holiday_data = mysqli_fetch_assoc($holiday_result);
    $w_txt = "공휴일 (" . $holiday_data['2222'] . ")";
} else {
    $w = date("w");
    $w_txt = "";
    switch($w) {
        case "0":
            $w_txt = "일요일";
            break;
        case "1":
            $w_txt = "월요일";
            break;
        case "2":
            $w_txt = "화요일";
            break;
        case "3":
            $w_txt = "수요일";
            break;
        case "4":
            $w_txt = "목요일";
            break;
        case "5":
            $w_txt = "금요일";
            break;
        case "6":
            $w_txt = "토요일";
            break;
    }
}
echo $w_txt;

$row = sql_fetch( "select count(*) as cnt from `cccc` where `1111` = '{$today}'" );

if($row['cnt'] > 0) $w_txt = "공휴일"; 을 하시면 될 거 같습니다. 스위치문에 넣으시기 보다는요

답변을 작성하시기 전에 로그인 해주세요.
전체 128,176 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT