간단한 온라인 예약 게시판 > 그누보드5 스킨

그누보드5 스킨

스킨 다운로드시 좋아요 클릭과 감사의 코멘트를 남기시면 제작자에게 큰 힘이됩니다. ^^y

간단한 온라인 예약 게시판 정보

게시판 간단한 온라인 예약 게시판

첨부파일

첨부파일 booking.zip (54.3K) 127회 다운로드 2019-01-30 21:29:28 포인트 차감100

본문

# 2019년 1월 30일

- 온라인예약시 예약시간 표시에서 첫번째 예약시간이 사라지는 현상 수정되었습니다.

- skin.function.php

 

# 2019년 1월 9일 추가내용.

- 예약시간별로 예약이 가득 찼을 경우 달력상의 "예약가능"이 "예약마감"으로 표시 되도록 수정.

 

==============================

온라인예약게시판.

 

PHP에 전문적 지식없이 만들어 졌기 때문에 코드가 난잡 할 수 있다는 느낌이 있을 수 있습니다.

PHP 7.2에서 테스트를 하였습니다.

다수의 사용자가 테스트를 하지 않아 아직 수정되지 않은 오류가 충분히 있을 수 있습니다.

아래의 기능을 구현하는데 목적을 두고 스킨제작을 했습니다.

이 스킨이 단 한사람이라 해도..  도움이 되었으면 하는 바램으로 공유합니다.

감사합니다.

 

데모페이지 : http://www.suu.kr/bbs/board.php?bo_table=booking

 

- 주요특징 -


1. 예약시작일과 예약종료일 설정
   - 예약시작일과 예약종료일을 설정 할 수 있습니다.
   - 당일예약 또는 내일이나 며칠 후부터 예약을 할 수 있도록 설정 할 수 있습니다.
   - 예) 오늘로부터 최소 2일후부터 최대 30일후까지 예약 가능

 

 

2. 예약시간 설정.
   - 예약시작시간과 예약종료시간을 설정 할 수 있습니다.
   - 예약가능시간을 1시간 또는 30분단위로 설정
   - 예약시간 구간동안 특정시간을 제외 할 수 있습니다.
   - 오전 10시부터 오후 5시까지 예약이 가능한 시간중 12시, 1시30분등 특정 시간을 예약시간에서 제외 할 수 있는 기능이 있습니다.
   - 1시간 간격 : 10:00, 11:00, 12:00, 13:00, 14:00......
   - 30분 간격 : 10:00, 10:30, 11:00, 11:30, 12:00, 12:30, 13:00, 13:30, 14:00 14:30 ......

 

 

3. 예약인원 설정.
   - 예약시간별로 최대인원을 설정 할 수 있습니다.
   - 이 기능으로 인하여 특정시간에 예약이 몰리는 현상을 방지 할 수 있습니다.
   - ex) 3명으로 설정시 시간대별로 3명까지만 예약접수 가능
   - 10:00(0), 10:30(0), 11:00(0)...(괄호안 숫자가 해당시간의 예약숫자)

 


4. 정기휴무일 설정 (반복 휴무 설정).
   - 매주 특정 요일 휴무 설정(ex. 매주 일요일 휴무)
   - 격주 특정 요일 휴무 설정 (ex. 토요일 격주 휴무, 특정 일자를 기준으로 휴무 시작)
   - 3주마다 특정 요일 휴무 설정 (ex. 3주마다 화요일 휴무, 특정 일자를 기준으로 휴무 시작)
   - 매월 특정일 휴무 (ex. 매월 10일 휴무, 특정 일자를 기준으로 휴무 시작(요일과 상관 없음))
   - 매년 특정일 휴무 (ex. 매년 5월 1일 휴무, 특정 일자를 기준으로 휴무 시작(요일과 상관없음))
    

 


5. 임시휴무일 설정.
   - 특정일을 임시휴무로 설정하여 예약접수가 되지 않도록 합니다.
   - 언제든지 설정과 해제가 가능합니다.
   - 달력 날짜를 클릭하여 설정 가능.

 


6. 예약 시간 제외 설정.
   - 예약 시간 구간중 특정 시간을 예약접수가 되지 않도록 합니다.
   - 제외된 예약시간대는 예약 등록 시 예약 시간이 표시 되지 않습니다.
   - 언제든지 설정과 해제가 가능합니다.
   - 달력 날짜를 클릭하여 설정 가능.

 


7. 예약현황 자동갱신 온오프 기능.
   - 온라인 예약화면에 접속되어 있는 상태에서 페이지를 새로고침없이 예약현황을 자동으로 갱신합니다.
   - 기본 30초마다 갱신되며, script.js 파일에서 갱신 시간을 변경 할 수 있습니다. (setInterval)
   - 다른 페이지를 이동하더라도 온오프상태가 유지됩니다. (자바스크립트 세션 사용)
   - 자동갱신 기본 값은 OFF 입니다.

 


8. 예약알림 SMS (그누보드에 포함된 ICODE)
   - SMS 발송여부를 설정 할 수 있습니다.
   - 예약정보를 관리자 또는 예약자에게 SMS 발송 할 수 있습니다.
   - 예약정보를 관리자 및 예약자에게 SMS를 동시 발송 할 수 있습니다.

 

9. 위의 모든 설정은 관리자만 가능합니다.

 

 

- 설치 방법 -

1. 테마폴더에 등록시 스킨파일중 '_common.php'파일의 경로를 수정하면 됩니다.
2. sql.php 파일을 열어 63라인의 mb_id를 관리자 아이디로 변경해주세요.
   사업자정보는 "회사정보변경"페이지로 접속후 수정할 수 있습니다.
3. 다운받은 파일을 게시판 스킨 폴더에 업로드 하세요. (./skin/board/)
4. 관리자페이지에서 예약게시판을 생성합니다.
5. 생성된 예약게시판에 접속하면 sql.php 파일도 함께 실행이 되어 cm_office, cm_holiday, {게시판테이블명}_sub등 총3개의 테이블이 추가로 생성됩니다.
   cm_office : 회사정보 및 예약시간 설정 값들이 들어 있습니다.
   cm_holiday : 정기휴무일 설정 값들이 들어 있습니다. ( 회사정보변경 페이지에서 추가 또는 삭제 가능)
   {게시판테이블}_sub : 임시휴무일 및 예약 시간 제외 값이 들어 있습니다. (달력 날짜를 클릭하여 설정 가능)
6. Jquery Dialog 위젯을 사용하기 때문에 jquery 1.21.1버전으로 사용 중입니다.
   이미 사용 중이라면 _jquery.php 파일을 열어 7 ~ 10라인까지 주석처리 또는 삭제하면 됩니다.

7. 궁금한 사항은 댓글로 남겨주시면 답변 드리도록 하겠습니다.

추천27
스폰서링크

댓글 전체


잘되가네요 그런데 차량게통에만 필료로 하겠습니다.아무턴 테스트 했습니다.
새해 福 많이 받으세요
저 스킨 사용해봤는데요~ 예약시간이 다 찼을때에 '예약가능'이라는 텍스트가 '예약완료'라던지 아니면 글자색이라도 바꾸게 하고 싶은데 어느부분에서 수정을 하면 될까요?
그 부분은 생각하지 못했던 부분인데.. 만약 처리를 하고자 한다면
"예약시간 * 에약시간별인원 = 1일총예약인원" 이 실제 예약한 인원과 비교하여 처리를 하면 될듯 합니다. 정확히 어디를 수정해야될지는 시간을 두고 확인해볼게요.
# 2019년 1월 9일 추가내용.
- 예약시간별로 예약이 가득 찼을 경우 달력상의 "예약가능"이 "예약마감"으로 표시 되도록 수정.
* 예약마감 관련 함수가 추가 되었고 일부 코드가 수정되었습니다.
* 예약마감 기능이 필요하신분은 다시 다운로드 받으시면 됩니다.
멋진스킨 감사합니다..
뭐하나 여쭙겠습니다. 시간선택시 라디오버튼이라 한번만 선택 되던데 여러개선택 되게할수도 있을까요?
"예약"이라는 조건때문에 예약시간을 하나만 선택해야 되는 것이죠.
예약시간을 다수 선택하게 할 수도 있지만 많은 코드를 수정해야 합니다.
가장 간단한 방법은 글(예약) 등록시 선택한 시간 수 만큼 등록을 해주면 되긴 합니다.
현재 테스트 해본 결과 같은 홈페이지 내에서 예약게시판을 2개를 사용하려고 하는데요. 그러면 회사정보가 동일하게 들어가지더라구요. 2개 각각 다르게 하고 싶은데 어느 부분을 수정해야될까요?? 답변주시면 감사하겠습니다~
예약게시판은 다수의 업체가 사용이 가능하도록 설계되었습니다. 그누보드 스킨으로 제작하려고 일부 기능이 제외 되어 있습니다.

1. cm_office 테이블을 관리할 수 있는 페이지가 있으면 좋습니다. (신규업체등록 및 수정페이지)

2. 모든 페이지 이동 방식은 "office_id=업체고유번호"의 형태를 유지합니다.
  업체고유번호는 cm_office의 "id_no" 필드입니다.

3. 예약게시판의 설정을 할 수 있는 레벨이 지정되어야 합니다. (현재는 최고관리자만 가능하도록 되어 있으니 최고관리자보다 낮은 레벨이 되도록 해야 합니다.)

4. 각 페이지마다 관리자만 접근 가능한곳을 예약설정관리자가 접근 가능하도록 수정해야 합니다.

5. 회사정보의 "업체회원아이디"에 "예약설정관리자 아이디"를 지정해줍니다.

위처럼 하나씩 수정하다 보면 될겁니다.

2개 이상의 업체가 사용하기 위해 추가로 신규게시판을 만들 필요는 없습니다.
좋은 스킨 감사합니다^^
적용해보니 궁금한점이 있어서요
회사정보변경에서 예약시간을 10시부터 설정하면
예약글쓰기 폼에서 예약시간이 11시부터 나오는데 이유가 뭘까요?
예약시간대에서 관리자가 설정한 "예약시간제외"값을 제외하는 부분에서 오류가 있었습니다.

"예약시간제외"값에 무관하게 첫번재 예약시간이 사라지는 현상이네요.
해결하기 위해서는 skin.function.php 파일을 수정해야 합니다.
"booking_time" 함수를 찾아서 아래의 코드로 변경해주세요.
// 예약시간대별 배열생성 ( 1시간단위 및 30분단위 )
function booking_time($bo_table, $select) {
	global $g5, $off, $start_time, $end_time, $time_gubun;

	$bt = array();
	
	for($i=$start_time; $i < $end_time; $i++) {

		$hour = sprintf("%02d",$i);

		$bt[] = $hour.":00";

		// 30분단위로 설정시 매시간별 30분 추가.
		if($time_gubun==1) {
			$bt[] .= $hour.":30";
		}
	}
	
	//예약시간 제외
	$sql = "select
				*
			from
				".$g5['write_prefix'].$bo_table."_sub
			where
				ex_kind = '2'
				and ex_date = '".$select."' ";
	$row = sql_fetch($sql, true);

	$except = explode("|", $row['ex_except']);

	for($i=0; $i < count($except); $i++) {
		$idx = array_search($except[$i], $bt); // 제외시간대상 위치(key) 찾기
		if($idx!==false){
			array_splice($bt, $idx, 1);
		}
	}

	$am = implode("|", $bt);

	return $am;
}
안녕하세요
혹시 이거여 반응형은 안되는 것이지요
혹 안된다고 한다면 반응형으로 구현을 하려고 한다면
어케 해야 하는지 여줘 봐도 될까요
그리고 혹시 여기에 날자를 클릭 하고 예약시에 사진도 올릴 수 있는지 궁금 합니다.
반응형으로 제작된건 아니지만 수정은 가능할것으로 생각됩니다.
이미지 업로드는 예약시 이미지업로드폼만 추가해서 사용하시면 됩니다.
그누보드 BASIC 스킨 참고하여 수정하시면 될겁니다.
질문내용처럼 하기 위해서는 몇군데 코드를 수정해야 합니다.
업체정보 고유값으로 페이지 접근하도록 변경하면 가능합니다.
즉 업체에 분양을 해서 업체가 사용하게 하는데 일정 기간만 사용이 가능하게 만들어주시고 유료로 판매를 하시면 좋겠습니다....^^ 감사합니다
좋은스킨 다운받아서 사용해볼려고하는데 에러가 떠서 문의 드립니다.
php 7.2.12 사용중인데요 아마 버젼 문제 같은데 좋은 방법 없을까요?
skin\board\booking\skin.function.php on line 26
skin\board\booking\skin.function.php on line 50
skin\board\booking\skin.function.php on line 60
skin\board\booking\skin.function.php on line 74
skin\board\booking\skin.function.php on line 430
skin\board\booking\skin.function.php on line 472 입니다.
Warning: Use of undefined constant option_int - assumed 'option_int' (this will throw an Error in a future version of PHP) in
이게 에러문구 입니다.
해당 파일의 함수 내용이 아래와 같이 되어 있습니다.

if(!function_exists(option_int)) {
function option_int($start,$end,$plus,$option_name) {
for($i=$start; $i <= $end; $i+=$plus) {
$selected=($option_name==$i)? "selected":"";
$result .="<option value='$i' $selected>$i</option>";
}
return($result);
}
}

위 내용을 아래와 같이 변경해주세요. (모든 함수 변경)

function option_int($start,$end,$plus,$option_name) {
for($i=$start; $i <= $end; $i+=$plus) {
$selected=($option_name==$i)? "selected":"";
$result .="<option value='$i' $selected>$i</option>";
}
return($result);
}


"if(!function_exists(option_int)) {"를 주석처리나 삭제후 다시 해보시기 바랍니다.

물론 함수 끝부분 "}" 이것도 처리해주셔야 되요.
말씀해주신대로 바꿨더니
Warning: count(): Parameter must be an array or an object that implements Countable in
skin\board\booking\skin.function.php on line 26
skin\board\booking\skin.function.php on line 58
skin\board\booking\skin.function.php on line 72

달력부분은
 skin\board\booking\skin.function.php on line 428
skin\board\booking\skin.function.php on line 470 에
에러가 나오네요.
안녕하세요
지금 설치를 했는데 현제 달력이 안나와요 왜 그러는 것인지 궁금 합니다.
http://yst.jmtech5.com/bbs/board.php?bo_table=board8
루미집사님 연락드릴 방법이 없어서 댓글 드립니다 ㅠㅠ
여분필드 wr_9에 1이라는 값이 있다면

skin.function.php
483번째 줄에서 "확인됨" 을 출력하고 싶은데  호출 방법을 도무지 모르겠습니다요 ㅠㅠ  최대한 해보고 있습니닭
혹시 죄송한데요 이미지나 폰트는 뭐 로드가 안 되어 서 그런 것이고 스크립트 오류 나는 부분은 어떻게 해결을 해야 하는지 좀 알려 주시면 안될까요
테마내에 있는 제이쿼리는 기본이라서요
그누보드최근에 설치를 한건데요.

예약을 한 후에 예약 수정, 달력보기, 예약 삭제 버튼이 모두 먹통입니다.

php버전이 안맞아서 그런걸까요?
안녕하세요. 프로그램 공개 감사합니가. 혹시 특정시간을 예약에서 제외 시킬수 있을까요? 점심 시간이라던지.. 정기휴무일 설청하는것처럼 특정 시간대로 선택하는게 있었으면 좋겠습다. ^^ 그리고 예약시간이 현재는 1시간, 30분 단위인데 2시간으로 하려면 어떻게 하는지 알수 있을까요?
현재 스킨 기능을 참고하여 추가로 코드 수정을 하시면 충분히 원하는 기능을 구현가능하실것입니다.  예약시간제외나 예약시간단위모두 함수로 되어 있기 때문에 해당 함수의 기능만 수정하시면 될듯 합니다.
전체 1,483 |RSS
그누보드5 스킨 내용 검색

회원로그인

진행중 포인트경매

  1. @멘션 알림 플러그인

    참여5 회 시작19.03.18 09:33 종료19.03.25 09:33

(주)에스아이알소프트 (06253) 서울특별시 강남구 도곡로1길 14, 6층 624호 (역삼동, 삼일프라자) 대표메일:admin@sir.kr
사업자등록번호:217-81-36347 대표:홍석명 통신판매업신고번호:2014-서울강남-02098호 개인정보보호책임자:이총

© SIRSOFT