예약 (달력) 게시판 토요일 선택 비활성화(제외) 방법

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
예약 (달력) 게시판 토요일 선택 비활성화(제외) 방법

QA

예약 (달력) 게시판 토요일 선택 비활성화(제외) 방법

본문

안녕하세요.

 

예약 (달력) 게시판 https://sir.kr/g5_skin/16675 에서 토요일은 클릭되지 않도록 할 수 있는 방법이 궁금합니다.

 

 

cal.php 파일소스

 

<?php
error_reporting( E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING );

$board_skin_path = $_SERVER["DOCUMENT_ROOT"]."/skin/board/reserve_calendar";
include_once("$board_skin_path/moonday.php"); // 석봉운님의 음력날짜 함수
$bo_table = $_GET["bo_table"];
$col_height= 80 ;//내용 들어갈 사각공간의 세로길이를 가로 폭과 같도록
$today = getdate();
$today_ymd = date("Ymd",time());
$b_mon = $today['mon'];
$b_day = $today['mday'];
$b_year = $today['year'];
$year = $_GET["year"];
$month = $_GET["month"];
if ($year < 1) { // 오늘의 달력 일때
  $month = $b_mon;
  $mday = $b_day;
  $year = $b_year;
}
if(!$year)  $year = date("Y");
$file_index = $board_skin_path."/day"; ### 기념일 폴더 위치 지정
### 양력 기념일 파일 지정 : 해당년도 파일이 없으면 기본파일(solar.txt)을 불러온다
if(file_exists($file_index."/".$year.".txt")) {
 $dayfile = file($file_index."/".$year.".txt");
} else {
 $dayfile = file($file_index."/solar.txt");
}
$lastday=array(0,31,28,31,30,31,30,31,31,30,31,30,31);
if ($year%4 == 0) $lastday[2] = 29;
$dayoftheweek = date("w", mktime (0,0,0,$month,1,$year)); 
?>

<div class="schedule">
    <div class="tit_month">
     <span class="btn_before">
      <!-- <a href="<?php echo $_SERVER["PHP_SELF"]."?bo_table=".$bo_table."&"; ?><?php if ($month == 1) { $year_pre=$year-1; $month_pre=12; } else {$year_pre=$year; $month_pre=$month-1;} echo ("year=$year_pre&month=$month_pre");?>">왼쪽</a> -->
      <a href="javascript:void(0);" onclick="<?php if ($month == 1) { $year_pre=$year-1; $month_pre=12; } else {$year_pre=$year; $month_pre=$month-1;} ?>javascript:getCal('<?php echo $year_pre?>','<?php echo $month_pre?>');">왼쪽</a>
     </span>
     <span class="year_text">
      <!-- <a href="<?php echo $_SERVER["PHP_SELF"]."?bo_table=".$bo_table; ?>" title="오늘로"><?php echo "$year.  ".sprintf("%02d",$month); ?></a> -->
      <a href="javascript:void(0);" title="오늘로" onclick="javascript:getCal('<?php echo date("Y",time())?>','<?php echo date("n",time())?>');"><?php echo "$year.  ".sprintf("%02d",$month); ?></a>
     </span>
     <span class="btn_next">
      <!-- <a href="<?php echo $_SERVER["PHP_SELF"]."?bo_table=".$bo_table."&"; ?><?php if ($month == 12) { $year_pre=$year+1; $month_pre=1; } else {$year_pre=$year; $month_pre=$month+1;} echo ("year=$year_pre&month=$month_pre");?>">오른쪽</a> -->
      <a href="javascript:void(0);" onclick="<?php if ($month == 12) { $year_pre=$year+1; $month_pre=1; } else {$year_pre=$year; $month_pre=$month+1;} ?>javascript:getCal('<?php echo $year_pre?>','<?php echo $month_pre?>');">오른쪽</a>
     </span>
    </div>
    <table class="sche_table" border="0" summary="예약">
     <thead>
      <tr>
       <th scope="col">일</th>
       <th scope="col">월</th>
       <th scope="col">화</th>
       <th scope="col">수</th>
       <th scope="col">목</th>
       <th scope="col">금</th>
       <th scope="col" class="last">토</th>
      </tr>
     </thead>
     <tbody>
<?php
 // 달력의 틀을 보여주는 부분
 $cday = 1;
 $temp = 7 - (($lastday[$month]+$dayoftheweek)%7);
 if ($temp == 7) $temp = 0;
  $lastcount = $lastday[$month]+$dayoftheweek + $temp;
 for ($iz = 1; $iz <= $lastcount; $iz++)
 {
  $bgcolor = "#ffffff";  // 쭉 흰색으로 칠하고
  if ($b_year==$year && $b_mon==$month && $b_day==$cday) {
   $bgcolor = "#DEFADE";      //  "#DFFDDF"; // 오늘날짜 연두색으로 표기
  }
  if (($iz%7) == 1) {
   echo ("<tr>"); // 주당 7개씩 한쎌씩을 쌓는다.
  }
  if ($dayoftheweek < $iz  &&  $iz <= $lastday[$month]+$dayoftheweek) {
   
   // 전체 루프안에서 숫자가 들어가는 셀들만 해당됨
   // 즉 11월 달에서 1일부터 30 일까지만 해당
   
   $daytext = "$cday";   // $cday 는 숫자 예> 11월달은 1~ 30일 까지
   $yes_cls = "yes";
   //$daytext 은 셀에 써질 날짜 숫자 넣을 공간
   $daycontcolor = "" ;
   $daycolor = "";
   
   $td_last = "";
   if ($iz%7 == 1) {
    $daycolor = "red"; // 일요일
   }
   if ($iz%7 == 0) {
    $daycolor = "blue"; // 토요일
    $td_last = "last";
   }
   $f_date = $year.sprintf("%02d",$month).sprintf("%02d",$cday);
   // 기념일 파일 내용 비교위한 변수 선언, 월과 일을 두자리 포맷으로 고정
   if (strlen($month) == 1) {
    $monthp = "0".$month ;
   } else {
    $monthp = $month ;
   }
   if (strlen($cday) == 1) {
    $cdayp = "0".$cday ;
   }
   else {
    $cdayp = $cday ;
   }
   $memday = $year.$monthp.$cdayp;
   $daycont = "" ;
   // 기념일(양력) 표시
   for($i=0 ; $i < sizeof($dayfile) ; $i++) {  // 파일 첫 행부터 끝행까지 루프
    $arrDay = explode("|", $dayfile[$i]);
    if($memday == $year.$arrDay[0]) {
     $daycont = $arrDay[1];
     $daycontcolor = $arrDay[2];
     if(substr($arrDay[2],0,3)=="red") $daycolor = "red"; // 공휴일은 날짜를 빨간색으로 표시
    }
   }
   // 석봉운님의 음력날짜 변수선언
   $myarray = soltolun($year,$month,$cday);
  
   // 음력 절기 파일, 기념일 추가시 else if 구문 복사해서 사용하세요. 한자리 날짜는 한자리로 써야 합니다.
   if ( $myarray["month"].'/'.$myarray["day"]=="12/30" ) { // 설연휴
    $daycolor="red" ;
   }
   else if ( $myarray["month"].'/'.$myarray["day"]=="1/1" ) { // 설날
    $daycolor="red" ;
   }
   else if ( $myarray["month"].'/'.$myarray["day"]=="1/2" ) { // 설연휴
    $daycolor="red" ;
   }
   else if ( $myarray["month"].'/'.$myarray["day"]=="4/8" ) { // 석가탄신일
    $daycolor="red";
   }
   else if ( $myarray["month"].'/'.$myarray["day"]=="8/14" ) { // 추석연휴
    $daycolor="red" ;
   }
   else if ( $myarray["month"].'/'.$myarray["day"]=="8/15" ) { // 추석
    $daycolor="red" ;
   }
   else if ( $myarray["month"].'/'.$myarray["day"]=="8/16" ) { // 추석연휴
    $daycolor="red" ;
   }
   else {
    $annivmoonday="" ;
   }
   if ($annivmoonday&&$daycont) {
//    $blank="<br />"; // 음력절기와 양력기념일이 동시에 있으면 한칸 띔
   }
   else {
    $blank="";
   }
   if($daycolor == "red") {
    $yes_cls = "red";
   }
  
   if($today_ymd > $f_date) {
    $yes_cls = "";
   }

   // 여기까지 숫자와 들어갈 내용에 대한 변수들의 세팅이 끝나고
   // 이제 여기 부터 직접 셀이 그려지면서 그 안에 내용이 들어 간다.
   echo "<td class='$td_last $yes_cls {curr_date:\"$f_date\"}'>";
   echo "$daytext $moonday";
   echo $html_day[$cday];
   echo ("</td>");  // 한칸을 마무리
   $cday++; // 날짜를 카운팅
  }
  // 유효날짜가 아니면 그냥 회색을 칠한다.
  else {
   echo ("     <td> </td>");
  }
  if (($iz%7) == 0) {
   echo ("  </tr>");
  }
 }
?>
     </tbody>
    </table>
    <div class="date_ok yeardate">
     <span class="date_choice year_class"></span><span>을 선택하셨습니다.</span>
    </div>
   </div>
 

 

 

 

time.php 파일소스


<?php
error_reporting( E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING );
include_once('./_common.php');
$currdate = $_GET["currdate"];

$nowdate = date("Ymd",time());
$day_type = date("N",strtotime($currdate)); // 1~5 평일, 6 토요일
//echo $k2 = substr($bb,6, 6);
$time_array[1] = array("오전 10:30","오전 11:00","오전 11:30","오후 12:00","오후 12:30","오후 14:00","오후 14:30","오후 15:00","오후 15:30","오후 16:00","오후 16:30","오후 17:00","오후 17:30","오후 18:00","오후 18:30");
$time_array[2] = array("오전 10:30","오전 11:00","오전 11:30","오후 12:00","오후 12:30","오후 14:00","오후 14:30","오후 15:00","오후 15:30","오후 16:00","오후 16:30","오후 17:00","오후 17:30","오후 18:00","오후 18:30","오후 19:00","오후 19:30","오후 20:00","오후 20:30");
$time_array[3] = array("오전 10:30","오전 11:00","오전 11:30","오후 12:00","오후 12:30","오후 14:00","오후 14:30","오후 15:00","오후 15:30","오후 16:00","오후 16:30","오후 17:00","오후 17:30","오후 18:00","오후 18:30");
$time_array[4] = array("오전 10:30","오전 11:00","오전 11:30","오후 12:00","오후 12:30","오후 14:00","오후 14:30","오후 15:00","오후 15:30","오후 16:00","오후 16:30","오후 17:00","오후 17:30","오후 18:00","오후 18:30","오후 19:00","오후 19:30","오후 20:00","오후 20:30");
$time_array[5] = array("오전 10:30","오전 11:00","오전 11:30","오후 12:00","오후 12:30","오후 14:00","오후 14:30","오후 15:00","오후 15:30","오후 16:00","오후 16:30","오후 17:00","오후 17:30","오후 18:00","오후 18:30");
$time_array[6] = array("오전 10:30","오전 11:00","오전 11:30","오후 12:00","오후 12:30","오후 14:00","오후 14:30","오후 15:00","오후 15:30","오후 16:00","오후 16:30");

$now_hour = date("H:i",time());
 
$query = "select * from g5_write_res WHERE wr_1='".$currdate."' ";
$result = sql_query($query);
$a = array();
for($i=0;$row=sql_fetch_array($result);$i++){ $a[$i]=$row['wr_2']; }

$admin_write1 = sql_fetch(" select count(*) as cnt from g5_write_res where wr_1='".$currdate."'  ");
$total = count($time_array[$day_type]) - $admin_write1['cnt'];
?>
 
<div class="schedule">
 <div class="time">
  <div class="time_list" id="time_list">
   <ul class="bu4" id="time_list2">
<?php
$sym_diff = array_values(array_diff(array_merge($time_array[$day_type], $a), array_intersect($time_array[$day_type], $a)));
for($i=0; $i<$total; $i++){
$reservation_yn = "N";
$aaa = $sym_diff[$i];
$k2 = substr($aaa,6, 6);
$now = date("H:i");
$k2 = str_replace(':','',$k2);
$now =  str_replace(':','',$now);
  $v_strtotime = strtotime($currdate.$k2);
  $now_strtotime = strtotime($nowdate.$now);
  
  if ($v_strtotime > $now_strtotime )
  {
   $reservation_yn = "Y";
  }
?>

 <li class="time_cls {currtime:'<?php echo $aaa?>',reservation_yn:'<?php echo $reservation_yn?>'}"><a href="javascript:void(0);" class="showme"><?php echo $aaa?> <?php echo $reservation_yn=="Y"?"(예약가능)":"(예약불가)"?></a></li>

<?} ?>
   <li> </li>
   </ul>
  </div>
 </div>
</div>
<div class="date_ok timedate">
 <span class="date_choice time_class"></span><span>을 선택하셨습니다.</span>
</div>

 

감사합니다.

이 질문에 댓글 쓰기 :

답변 1


if($daycolor == "red") {
 $yes_cls = "red";
}

이 부분을 아래와 같이 수정하시면 됩니다.


if($daycolor == "red" || $daycolor == "blue") {
 $yes_cls = $daycolor;
}
답변을 작성하시기 전에 로그인 해주세요.
전체 0
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

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