일정관리용 작은 다이어리 아무곳에나 설치... 정보
그누호환 일정관리용 작은 다이어리 아무곳에나 설치...
본문
사용방법
출력하고 싶은곳에
<? include "month.php";?>하시면 됩니다.
//#####################################################
//## 스킨디렉토리에 일정관리+다이어리 최정(하늘비님 스킨버젼) <---이것과 같이 연동되는겁니다.
//## 연동안할시는 날짜링크를 삭제하시면 됩니다.
//#####################################################
$bo_table = "일정관리스킨게시판명";
$cell_width = 20; // 셀 가로 크기
$cell_height = 20; // 셀 세로 크기
이값을 조정해서 테이블 사이즈를 조절가능합니다.
수정버젼으로 함수방식으로 셀가로,세로를 지정하고
해당 일정관리 쓰기모드와 연동 되도록 수정버젼 만들어서 올리겠습니다.
이후 버젼방식
<? month_d('bo_table명',가로폭,세로폭); ?>
//############################################################
//##
//## month.php
//##
//############################################################
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "STYLE");
?>
<!------------------------------------
//####################################
// basic Board Skin : rei
// skin by ⓒⓒⓒ
// msn : http://ccc.na.ly
//
//####################################
-------------------------------------->
<?
$cell_width = 20; // 셀 가로 크기
$cell_height = 20; // 셀 세로 크기
$limit_year = "1971~2037"; // 한계연도
$ttoday = $nday;
// 주어진 날짜가 없으면 현재날짜 구하기
if(!$nyear) $nyear = date('Y',time());
if(!$nmonth) $nmonth = date('m',time());
if(!$nday) $nday = date('d',time());
$tday = date('d',time());
// 기타 함수 정의
function end_day($year,$month){
for($i=28;$i<=32;$i++) {
if(!checkdate($month,$i,$year)) {
return $i-1;
break;
}
}
}
function conv_year($switch) {
global $nyear, $nmonth;
$c_year = $nyear;
if($switch=="prev") $c_year--;
else if($switch=="next") $c_year++;
echo '&nyear='.$c_year.'&nmonth='.sprintf("%02d",$nmonth);
}
function conv_month($switch) {
global $nyear, $nmonth;
$c_year = $nyear;
$c_month = $nmonth;
if($switch=="prev") {
if($nmonth <= 1) {$c_year--; $c_month=12;}
else $c_month--;
} else if($switch=="next") {
if($nmonth >= 12) {$c_year++; $c_month=1;}
else $c_month++;
} else {
$c_year=date('Y',time());
$c_month=date('m',time());
}
echo '&nyear='.$c_year.'&nmonth='.sprintf("%02d",$c_month);
}
function conv_week($switch) {
global $week_first, $week_last ;
if($switch=="prev") {
$nyear = $c_year = substr($week_first,0,4);
$nmonth = $c_month = substr($week_first,5,2);
$nday = $c_day = substr($week_first,8,2);
if($c_day <= 1 ) {
if($nmonth <= 1) {$c_year--; $c_month=12;}
else $c_month--;
$c_day = end_day($c_year,$c_month);
} else $c_day--;
} else if($switch=="next") {
$nyear = $c_year = substr($week_last,0,4);
$nmonth = $c_month = substr($week_last,5,2);
$nday = $c_day = substr($week_last,8,2);
if($c_day >= end_day($nyear,$c_month)) {
if($nmonth >= 12) {$c_year++; $c_month=1;}
else $c_month++;
$c_day=1;
} else $c_day++;
} else {
$c_year=date('Y',time());
$c_month=date('m',time());
$c_day=date('d',time());
}
echo '&nyear='.$c_year.'&nmonth='.sprintf("%02d",$c_month).'&nday='.sprintf("%02d",$c_day);
}
function conv_day($switch) {
global $nyear, $nmonth, $nday;
$c_year = $nyear;
$c_month = $nmonth;
$c_day = $nday;
if($switch=="prev") {
if($c_day <= 1 ) {
if($nmonth <= 1) {$c_year--; $c_month=12;}
else $c_month--;
$c_day = end_day($c_year,$c_month);
} else $c_day--;
} else if($switch=="next") {
if($c_day >= end_day($nyear,$c_month)) {
if($nmonth >= 12) {$c_year++; $c_month=1;}
else $c_month++;
$c_day=1;
} else $c_day++;
} else {
$c_year=date('Y',time());
$c_month=date('m',time());
$c_day=date('d',time());
}
echo '&nyear='.$c_year.'&nmonth='.sprintf("%02d",$c_month).'&nday='.sprintf("%02d",$c_day);
}
// 1일의 위치 구하기
$blank_no=date('w', mktime(0,0,0,$nmonth,1,$nyear));
?>
<table border=0 align=center cellpadding=0 cellspacing=1 bgcolor=#cccccc>
<col style='padding:3px' bgcolor=#FFFFFF width=12 span=7>
<tr bgcolor=#E7E7E7 align=center>
<td><font color=red>일</font>
<td>월
<td>화
<td>수
<td>목
<td>금
<td><font color=blue>토</font>
<tr height=<?=$cell_height?> valign=top>
<?
$colcnt=0; // 칸 카운터
$rowcnt=2; // 줄 카운터
$tmp_sum_day=end_day($nyear,$nmonth)+$blank_no; // 전체 루프 회수
$org_date=date('Ymd',time()); // 오늘 날짜
for($i=1;$i<=$tmp_sum_day;$i++) {
$nday=$i-$blank_no;
$colcnt++;
if($nday>0) {
// 주말, 평일 색상지정
switch(($blank_no+$nday)%7) {
case 0 : $tmp_nday = "<font color=blue>".$nday."</font>"; break; // 토요일
case 1 : $tmp_nday = "<font color=red>".$nday."</font>"; break; // 일요일
default : $tmp_nday = $nday; break; // 평일
}
$now_date=$nyear*10000+$nmonth*100+$nday;
if($org_date==$now_date) $tmp_nday="<b>".$tmp_nday."</b>"; // 오늘날짜 진하게
echo "<td width=$cell_width onMouseOver=\"this.style.backgroundColor='orange';\" onMouseOut=\"this.style.backgroundColor='#FFFFFF';\">"."<a href='?doc=bbs/gnuboard.php&w=&bo_table=$bo_table&nyear=$nyear&nmonth=$nmonth&nday=$nday&mode=day'>".$tmp_nday."</a>\n"; // 날짜 출력
} else echo "<td width=$cell_width bgcolor=#DCDCDC> "; // 공란 출력
if(!($colcnt%7)&&($colcnt < $tmp_sum_day)) { // 줄 바꿈
echo "\n<tr height=$cell_height valign=top>";
$rowcnt++;
}
}
// 줄과 칸 마무리 부분
$td_tail = $colcnt%7;
$tr_tail = $rowcnt%7;
// 줄마무리
if($tr_tail) {
if($td_tail) {
for($i=$td_tail;$i<7;$i++) echo "<td width=$cell_width bgcolor=#DCDCDC> ";
$td_tail=0;
}
if($tr_tail) {
echo"\n<tr height=$cell_height valign=top>";
$tr_tail=0;
}
}
// 칸마무리
if(!$tr_tail) {
for($i=$td_tail;$i<2;$i++) echo "<td bgcolor=#DCDCDC> ";
echo "<td colspan=5 valign=middle style='padding:0px'>\n";
}
// 한계연도 처리 부분
$limit_year=split('~',$limit_year);
if($nyear <= $limit_year[0]){$hide_lyear_start="<!--";$hide_lyear_end="-->";if($nmonth <= 1) {$hide_lmonth_start="<!--";$hide_lmonth_end="-->";}}
if($nyear >= $limit_year[1]){$hide_gyear_start="<!--";$hide_gyear_end="-->";if($nmonth >= 12) {$hide_gmonth_start="<!--";$hide_gmonth_end="-->";}}
?>
</table>
출력하고 싶은곳에
<? include "month.php";?>하시면 됩니다.
//#####################################################
//## 스킨디렉토리에 일정관리+다이어리 최정(하늘비님 스킨버젼) <---이것과 같이 연동되는겁니다.
//## 연동안할시는 날짜링크를 삭제하시면 됩니다.
//#####################################################
$bo_table = "일정관리스킨게시판명";
$cell_width = 20; // 셀 가로 크기
$cell_height = 20; // 셀 세로 크기
이값을 조정해서 테이블 사이즈를 조절가능합니다.
수정버젼으로 함수방식으로 셀가로,세로를 지정하고
해당 일정관리 쓰기모드와 연동 되도록 수정버젼 만들어서 올리겠습니다.
이후 버젼방식
<? month_d('bo_table명',가로폭,세로폭); ?>
//############################################################
//##
//## month.php
//##
//############################################################
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "STYLE");
?>
<!------------------------------------
//####################################
// basic Board Skin : rei
// skin by ⓒⓒⓒ
// msn : http://ccc.na.ly
//
//####################################
-------------------------------------->
<?
$cell_width = 20; // 셀 가로 크기
$cell_height = 20; // 셀 세로 크기
$limit_year = "1971~2037"; // 한계연도
$ttoday = $nday;
// 주어진 날짜가 없으면 현재날짜 구하기
if(!$nyear) $nyear = date('Y',time());
if(!$nmonth) $nmonth = date('m',time());
if(!$nday) $nday = date('d',time());
$tday = date('d',time());
// 기타 함수 정의
function end_day($year,$month){
for($i=28;$i<=32;$i++) {
if(!checkdate($month,$i,$year)) {
return $i-1;
break;
}
}
}
function conv_year($switch) {
global $nyear, $nmonth;
$c_year = $nyear;
if($switch=="prev") $c_year--;
else if($switch=="next") $c_year++;
echo '&nyear='.$c_year.'&nmonth='.sprintf("%02d",$nmonth);
}
function conv_month($switch) {
global $nyear, $nmonth;
$c_year = $nyear;
$c_month = $nmonth;
if($switch=="prev") {
if($nmonth <= 1) {$c_year--; $c_month=12;}
else $c_month--;
} else if($switch=="next") {
if($nmonth >= 12) {$c_year++; $c_month=1;}
else $c_month++;
} else {
$c_year=date('Y',time());
$c_month=date('m',time());
}
echo '&nyear='.$c_year.'&nmonth='.sprintf("%02d",$c_month);
}
function conv_week($switch) {
global $week_first, $week_last ;
if($switch=="prev") {
$nyear = $c_year = substr($week_first,0,4);
$nmonth = $c_month = substr($week_first,5,2);
$nday = $c_day = substr($week_first,8,2);
if($c_day <= 1 ) {
if($nmonth <= 1) {$c_year--; $c_month=12;}
else $c_month--;
$c_day = end_day($c_year,$c_month);
} else $c_day--;
} else if($switch=="next") {
$nyear = $c_year = substr($week_last,0,4);
$nmonth = $c_month = substr($week_last,5,2);
$nday = $c_day = substr($week_last,8,2);
if($c_day >= end_day($nyear,$c_month)) {
if($nmonth >= 12) {$c_year++; $c_month=1;}
else $c_month++;
$c_day=1;
} else $c_day++;
} else {
$c_year=date('Y',time());
$c_month=date('m',time());
$c_day=date('d',time());
}
echo '&nyear='.$c_year.'&nmonth='.sprintf("%02d",$c_month).'&nday='.sprintf("%02d",$c_day);
}
function conv_day($switch) {
global $nyear, $nmonth, $nday;
$c_year = $nyear;
$c_month = $nmonth;
$c_day = $nday;
if($switch=="prev") {
if($c_day <= 1 ) {
if($nmonth <= 1) {$c_year--; $c_month=12;}
else $c_month--;
$c_day = end_day($c_year,$c_month);
} else $c_day--;
} else if($switch=="next") {
if($c_day >= end_day($nyear,$c_month)) {
if($nmonth >= 12) {$c_year++; $c_month=1;}
else $c_month++;
$c_day=1;
} else $c_day++;
} else {
$c_year=date('Y',time());
$c_month=date('m',time());
$c_day=date('d',time());
}
echo '&nyear='.$c_year.'&nmonth='.sprintf("%02d",$c_month).'&nday='.sprintf("%02d",$c_day);
}
// 1일의 위치 구하기
$blank_no=date('w', mktime(0,0,0,$nmonth,1,$nyear));
?>
<table border=0 align=center cellpadding=0 cellspacing=1 bgcolor=#cccccc>
<col style='padding:3px' bgcolor=#FFFFFF width=12 span=7>
<tr bgcolor=#E7E7E7 align=center>
<td><font color=red>일</font>
<td>월
<td>화
<td>수
<td>목
<td>금
<td><font color=blue>토</font>
<tr height=<?=$cell_height?> valign=top>
<?
$colcnt=0; // 칸 카운터
$rowcnt=2; // 줄 카운터
$tmp_sum_day=end_day($nyear,$nmonth)+$blank_no; // 전체 루프 회수
$org_date=date('Ymd',time()); // 오늘 날짜
for($i=1;$i<=$tmp_sum_day;$i++) {
$nday=$i-$blank_no;
$colcnt++;
if($nday>0) {
// 주말, 평일 색상지정
switch(($blank_no+$nday)%7) {
case 0 : $tmp_nday = "<font color=blue>".$nday."</font>"; break; // 토요일
case 1 : $tmp_nday = "<font color=red>".$nday."</font>"; break; // 일요일
default : $tmp_nday = $nday; break; // 평일
}
$now_date=$nyear*10000+$nmonth*100+$nday;
if($org_date==$now_date) $tmp_nday="<b>".$tmp_nday."</b>"; // 오늘날짜 진하게
echo "<td width=$cell_width onMouseOver=\"this.style.backgroundColor='orange';\" onMouseOut=\"this.style.backgroundColor='#FFFFFF';\">"."<a href='?doc=bbs/gnuboard.php&w=&bo_table=$bo_table&nyear=$nyear&nmonth=$nmonth&nday=$nday&mode=day'>".$tmp_nday."</a>\n"; // 날짜 출력
} else echo "<td width=$cell_width bgcolor=#DCDCDC> "; // 공란 출력
if(!($colcnt%7)&&($colcnt < $tmp_sum_day)) { // 줄 바꿈
echo "\n<tr height=$cell_height valign=top>";
$rowcnt++;
}
}
// 줄과 칸 마무리 부분
$td_tail = $colcnt%7;
$tr_tail = $rowcnt%7;
// 줄마무리
if($tr_tail) {
if($td_tail) {
for($i=$td_tail;$i<7;$i++) echo "<td width=$cell_width bgcolor=#DCDCDC> ";
$td_tail=0;
}
if($tr_tail) {
echo"\n<tr height=$cell_height valign=top>";
$tr_tail=0;
}
}
// 칸마무리
if(!$tr_tail) {
for($i=$td_tail;$i<2;$i++) echo "<td bgcolor=#DCDCDC> ";
echo "<td colspan=5 valign=middle style='padding:0px'>\n";
}
// 한계연도 처리 부분
$limit_year=split('~',$limit_year);
if($nyear <= $limit_year[0]){$hide_lyear_start="<!--";$hide_lyear_end="-->";if($nmonth <= 1) {$hide_lmonth_start="<!--";$hide_lmonth_end="-->";}}
if($nyear >= $limit_year[1]){$hide_gyear_start="<!--";$hide_gyear_end="-->";if($nmonth >= 12) {$hide_gmonth_start="<!--";$hide_gmonth_end="-->";}}
?>
</table>
추천
0
0
댓글 전체
미니달력에 일정이 있는날만 표시되도록 하지 못합니까.... 그부분은 구현이 안되어 있는것같은데요..
일단 소스 넘 감사합니다
잘 사용하고 있는데요,....
날짜를 누르면 해당 일정관리 게시판으로 가는데요
날짜 누르면 그 날짜의 내용이 보여지게 하려면 어떻게 해야 하나요
저만 안되는건가요??? 참고로 저는 하늘비님 스킨이 아니라
다른 일정관리 게시판입니다
잘 사용하고 있는데요,....
날짜를 누르면 해당 일정관리 게시판으로 가는데요
날짜 누르면 그 날짜의 내용이 보여지게 하려면 어떻게 해야 하나요
저만 안되는건가요??? 참고로 저는 하늘비님 스킨이 아니라
다른 일정관리 게시판입니다

다음버젼으로 함수방식을 사용하기때문에 쫑이 나지 않습니다. 조금만 기다려보세요! *^^*
bo_table = "일정관리스킨게시판명"; ---> 요것이.. 답사 겔러리랑 쫑 나네요.. --;
다른 방법을 찾아 봤지만.. 제 실력으론.. ^^;
다른 스킨하고는 괜찮은데.. 답사 겔러리 하고만 쫑 나네요..
다른 방법을 찾아 봤지만.. 제 실력으론.. ^^;
다른 스킨하고는 괜찮은데.. 답사 겔러리 하고만 쫑 나네요..
감사합니다. 잘 쓰겠습니다.
감사합니다.
음 좋군요....
근데 이것을 투명으로 하면 마우스오버에서만 날자칸의 색이 변하게 하려면 어떻게 해야 하는가요?
소스에서 마우스아웃을 지우면 마우스오버색이 그대로 남는군요.
근데 이것을 투명으로 하면 마우스오버에서만 날자칸의 색이 변하게 하려면 어떻게 해야 하는가요?
소스에서 마우스아웃을 지우면 마우스오버색이 그대로 남는군요.
제가 찾던겁니다...ㅠ.ㅠ
감격스럽네요...
다시 한번 고맙습니다....^^
감격스럽네요...
다시 한번 고맙습니다....^^
엥..그랬군여...일단소스만적용하고 떠벌인 나의실수입니당..^^
<?
$bo_table = "일정관리스킨게시판명"; ----->요부분을 넣으시면 됩니다...^^(상단에 있죠)
$cell_width = 20; // 셀 가로 크기
$cell_height = 20; // 셀 세로 크기
$bo_table = "일정관리스킨게시판명"; ----->요부분을 넣으시면 됩니다...^^(상단에 있죠)
$cell_width = 20; // 셀 가로 크기
$cell_height = 20; // 셀 세로 크기
화면은잘뜨는데요^^~~좋아요..
근데..날짜링크를 누르니..테이블값이넘어오지아니한다고..경고창이뜨네요..
근데..날짜링크를 누르니..테이블값이넘어오지아니한다고..경고창이뜨네요..
방금 적용시켜 봤습니다....
좋은 소스입니다............... 차후 수정버젼이 더욱 기대되는군요............
감사합니다.............^^
좋은 소스입니다............... 차후 수정버젼이 더욱 기대되는군요............
감사합니다.............^^