이럴수는 없다 & 미니 칼렌다 관련 문의 정보
그누보드 이럴수는 없다 & 미니 칼렌다 관련 문의본문
아침 9시부터 지금까지 겨우 겨우 서버 원상복귀 했으나 ...약간의 문제가 남았습니다. ㅠ.ㅠ
제가 오늘 (엄격하게는 어제) 올린 글 두개는 완전 삽질의 표본이요 자신감의 부족인듯 합니다.
일을 함에 있어 자신감이 중요한데 리눅스 접한게 얼마 되지 않아서 자신감이 없어서가 가장 큰 이유인듯 합니다.
일단 해법은 몇번의 서버 밀기와 각종 디비 및 세팅을 하면서 겨우 새벽 한시에 머리를 탁 치는 일이 생겼는데..
오류가 있던 페이지들의 공통점을 발견한 것이지요..
어제까지 멀쩡하던 홈페이지가 담날 아침에 메인이 찌그러져 있어서 ..크래킹으로 의심을 했는데..
서버 아무리 뒤져바도 그런 모습은 보이질 않더라구요..일단 증거확보를 위해서 각종 로그 및 접속관련된거
다시 한번 백업하고 질답 게시판에 글 올렸는데..크로스사이팅에 대한 답변이 있어서 결국은 맘이 그쪽으로
기울어 버리고 내가 무능해서지 라면서 이를 부득하고 갈면서 서버 밀고 백업 덮어 씌우고..
어라 고대로네 ㅡㅡ;, 너무 성급하게 했나..아니 아니 새로 서버 프로그램 받은거 잘못 설치했나 ??
(참고로 전 리눅스 서버 소스 설치 밖에 못합니다. rpm 설치는 윈도우에서 이골나게 해봐서 리눅스는 아에
첨부터 소스 설치만 해서요^^;) 다시 버젼 업된거 새로 영문 번역 열라 해가며 봐도 ..글구 솔직히 APM 생생히
잘돌아 가는데 ...아무리 해도 답이 안나 오더라구요...그래도 난 아직은 좀 더 공부해야지 하면서..
디비도 백업 받은거 걍 나두고 하나 하나 끼워 마추구 ㅡㅡ; ...어라 고대로네 ㅠ.ㅠ
아씨 이젠 나도 몰겠다 하는 순간 ..머리를 탁치며 날아가는 ..혹시나 넵..역시나 였습니다.
미니 일정표 내손으로 만들 실력은 안되고 저번에 바둔거 배껴다가 de~lib.php에 넣어서 잘 불러서 사용하고
있었죠..어제(3월 31일까지는) 근데 오늘 4월1일이 되는 순간 이게 문제를 일으킨 겁니다.
팁택에 있던 소스입니다.
<?
function gs_cal($input_y='',$input_m='',$bo_table='')
{
global $cfg, $gnu_path , $mb_id;
// 주어진 날짜가 없으면 현재날짜 구하기
if(!$input_y) $input_y = date('Y',time());
if(!$input_m) $input_m = date('m',time());
if(!$input_d) $input_d = date('d',time());
$weekdate=date('w', mktime(0,0,0,$input_m,1,$input_y));
$currentday = "$input_y"."-"."$input_m" ;
for($i=28;$i<33;$i++)
{
$res = checkdate($input_m,$i,$input_y);
if(!$res)
{
$tday = $i;
$i = 33;
}}$changerow =0;echo "<table border=0 cellspacing=1 cellpadding=0 width=100% bgcolor='#DDDDDD' style='font-size:12px; cursor:default'>";echo "<tr><td colspan=7 bgcolor='#FFFFFF' align=center height=30><b>$input_y 년 $input_m 월 $input_d 일</b> </th></tr>";echo "<tr bgcolor='#EEEEEE'>
<td bgcolor='#e2cbcb' height=25 align=center>일</td>
<td height=25 align=center>월</td>
<td height=25 align=center>화</td>
<td height=25 align=center>수</td>
<td height=25 align=center>목</td>
<td height=25 align=center>금</td>
<td bgcolor='#cbd5e2' height=25 align=center>토</td>
</tr>
<tr bgcolor='#FFFFFF'>
";
$today_schedule = "";//일정 목록
for($i=1; $i < $tday + $weekdate; $i++){ $dispnum = $i - $weekdate; $changerow += 1; switch ($changerow % 7) {
case 1 :
$bgc = "bgcolor='#fcf5f5'";
break;
case 0 :
$bgc = "bgcolor='#eff4f9'";
break;
default:
$bgc = "bgcolor='#FFFFFF'";
break;
}
//1~9까지의 숫자 앞에 0을 붙입니다.
if($dispnum < 10){$dispnums="0".$dispnum;}else{$dispnums=$dispnum;}
$a="{$currentday}"."-"."$dispnums";
$sql = "select * from $cfg[write_table_prefix]$bo_table where wr_link2='$a' order by wr_num desc";
$result= sql_query($sql);
$s_num = mysql_num_rows($result);//일정의 갯수
if($dispnum == $input_d) {
$bgc = "bgcolor='#C7E1E7'";
while($data = mysql_fetch_array($result)){
$wr_subject = cut_str($data[wr_subject],22);
$wr_content = cut_str($data[wr_content],250);
$mb_id = $data[mb_id];
$s_str .="<span style='font-size:9pt;'>* <a href='./?doc=bbs/gnuboard.php&bo_table=$bo_table&wr_id=$data[wr_id]&wr_link2='$a'' title='$wr_content'>$wr_subject</a></span><br>";
}
//오늘날짜에 있는 일정갯수 뽑기
if(strlen($s_str)>0){
$today_schedule = "<table width='100%' cellpadding=0 cellspacing=0><tr><td height=5></td></tr></table>
<table width=100% cellpadding=0 cellspacing=1><tr><td class='subject subjecttitlebg'>
<table width=100% cellpadding=0 cellspacing=1>
<tr><td class='subject subjectbg' align=center height=25>오늘의 일정</TD></TR> </table>
</td></tr></table>
<!-- 공백 -->
<table width='100%' cellpadding=0 cellspacing=0><tr><td height=5></td></tr></table>
<!--<marquee direction=up scrollamount=1 width=100% height=20>-->
<div align=left>
$s_str
</div>
<!--</marquee>-->
</a>
<!-- 공백 -->
<table width='100%' cellpadding=0 cellspacing=0><tr><td height=5></td></tr></table>
";
}
}
if ($s_num != 0) {
$dlink ="<a href='./?doc=bbs/gbform.php&w=&bo_table=$bo_table&link2={$currentday}-$dispnums' title='{$s_num}개의일정이 있습니다. 다시 일정을 등록하시려면 날짜를 클릭하세요.......[올라온 글]* {$wr_subject}'><b> ";
} else {
$dlink = "<a href='./?doc=bbs/gbform.php&w=&bo_table=$bo_table&link2={$currentday}-$dispnums' title='일정등록'>";
}
if($dispnums < 1) {
echo"<td $bgc> </td>";
} else {
echo "<td $bgc onMouseOver=this.style.backgroundColor='#FFCC66' onMouseOut=this.style.backgroundColor='' height=18 align=center>".$dlink."<font face=Tahoma size='1' color='#777777'>".$dispnums."</font></b></a></td>"; }
if(!($changerow % 7)&&($changerow < $tday + $weekdate)) echo "</tr><tr bgcolor='#FFFFFF'>";}$td_tail =7 - ($changerow % 7);if($td_tail != 7){ for($i = 1; $i <= $td_tail; $i++) echo "<td> </td>"; echo "</tr></table>";}
echo($today_schedule);
}
?>
결국 몇시간 동안 이거 수정해 볼려고 아둥 바둥 하다가 (먹지도 못하고 졸립기도 하고 오늘 빵만 한조가리 커피 5-6잔 마셨네요. ^^;) 포기하고 다른거 슬쩍 언져서 대충 오류만 안나게 해놨습니다.
여기서 문제 ...위 소스에서 무엇 때문에 잘 되던 홈페이지 메인이 깨졌을까요?
하나더 황당한건 위 소스에서 오늘의 일정이 입력되면 안깨진다는 거죠.
** 즐겁게 읽으셨죠? ^^; 답변 부탁합니다.
제가 오늘 (엄격하게는 어제) 올린 글 두개는 완전 삽질의 표본이요 자신감의 부족인듯 합니다.
일을 함에 있어 자신감이 중요한데 리눅스 접한게 얼마 되지 않아서 자신감이 없어서가 가장 큰 이유인듯 합니다.
일단 해법은 몇번의 서버 밀기와 각종 디비 및 세팅을 하면서 겨우 새벽 한시에 머리를 탁 치는 일이 생겼는데..
오류가 있던 페이지들의 공통점을 발견한 것이지요..
어제까지 멀쩡하던 홈페이지가 담날 아침에 메인이 찌그러져 있어서 ..크래킹으로 의심을 했는데..
서버 아무리 뒤져바도 그런 모습은 보이질 않더라구요..일단 증거확보를 위해서 각종 로그 및 접속관련된거
다시 한번 백업하고 질답 게시판에 글 올렸는데..크로스사이팅에 대한 답변이 있어서 결국은 맘이 그쪽으로
기울어 버리고 내가 무능해서지 라면서 이를 부득하고 갈면서 서버 밀고 백업 덮어 씌우고..
어라 고대로네 ㅡㅡ;, 너무 성급하게 했나..아니 아니 새로 서버 프로그램 받은거 잘못 설치했나 ??
(참고로 전 리눅스 서버 소스 설치 밖에 못합니다. rpm 설치는 윈도우에서 이골나게 해봐서 리눅스는 아에
첨부터 소스 설치만 해서요^^;) 다시 버젼 업된거 새로 영문 번역 열라 해가며 봐도 ..글구 솔직히 APM 생생히
잘돌아 가는데 ...아무리 해도 답이 안나 오더라구요...그래도 난 아직은 좀 더 공부해야지 하면서..
디비도 백업 받은거 걍 나두고 하나 하나 끼워 마추구 ㅡㅡ; ...어라 고대로네 ㅠ.ㅠ
아씨 이젠 나도 몰겠다 하는 순간 ..머리를 탁치며 날아가는 ..혹시나 넵..역시나 였습니다.
미니 일정표 내손으로 만들 실력은 안되고 저번에 바둔거 배껴다가 de~lib.php에 넣어서 잘 불러서 사용하고
있었죠..어제(3월 31일까지는) 근데 오늘 4월1일이 되는 순간 이게 문제를 일으킨 겁니다.
팁택에 있던 소스입니다.
<?
function gs_cal($input_y='',$input_m='',$bo_table='')
{
global $cfg, $gnu_path , $mb_id;
// 주어진 날짜가 없으면 현재날짜 구하기
if(!$input_y) $input_y = date('Y',time());
if(!$input_m) $input_m = date('m',time());
if(!$input_d) $input_d = date('d',time());
$weekdate=date('w', mktime(0,0,0,$input_m,1,$input_y));
$currentday = "$input_y"."-"."$input_m" ;
for($i=28;$i<33;$i++)
{
$res = checkdate($input_m,$i,$input_y);
if(!$res)
{
$tday = $i;
$i = 33;
}}$changerow =0;echo "<table border=0 cellspacing=1 cellpadding=0 width=100% bgcolor='#DDDDDD' style='font-size:12px; cursor:default'>";echo "<tr><td colspan=7 bgcolor='#FFFFFF' align=center height=30><b>$input_y 년 $input_m 월 $input_d 일</b> </th></tr>";echo "<tr bgcolor='#EEEEEE'>
<td bgcolor='#e2cbcb' height=25 align=center>일</td>
<td height=25 align=center>월</td>
<td height=25 align=center>화</td>
<td height=25 align=center>수</td>
<td height=25 align=center>목</td>
<td height=25 align=center>금</td>
<td bgcolor='#cbd5e2' height=25 align=center>토</td>
</tr>
<tr bgcolor='#FFFFFF'>
";
$today_schedule = "";//일정 목록
for($i=1; $i < $tday + $weekdate; $i++){ $dispnum = $i - $weekdate; $changerow += 1; switch ($changerow % 7) {
case 1 :
$bgc = "bgcolor='#fcf5f5'";
break;
case 0 :
$bgc = "bgcolor='#eff4f9'";
break;
default:
$bgc = "bgcolor='#FFFFFF'";
break;
}
//1~9까지의 숫자 앞에 0을 붙입니다.
if($dispnum < 10){$dispnums="0".$dispnum;}else{$dispnums=$dispnum;}
$a="{$currentday}"."-"."$dispnums";
$sql = "select * from $cfg[write_table_prefix]$bo_table where wr_link2='$a' order by wr_num desc";
$result= sql_query($sql);
$s_num = mysql_num_rows($result);//일정의 갯수
if($dispnum == $input_d) {
$bgc = "bgcolor='#C7E1E7'";
while($data = mysql_fetch_array($result)){
$wr_subject = cut_str($data[wr_subject],22);
$wr_content = cut_str($data[wr_content],250);
$mb_id = $data[mb_id];
$s_str .="<span style='font-size:9pt;'>* <a href='./?doc=bbs/gnuboard.php&bo_table=$bo_table&wr_id=$data[wr_id]&wr_link2='$a'' title='$wr_content'>$wr_subject</a></span><br>";
}
//오늘날짜에 있는 일정갯수 뽑기
if(strlen($s_str)>0){
$today_schedule = "<table width='100%' cellpadding=0 cellspacing=0><tr><td height=5></td></tr></table>
<table width=100% cellpadding=0 cellspacing=1><tr><td class='subject subjecttitlebg'>
<table width=100% cellpadding=0 cellspacing=1>
<tr><td class='subject subjectbg' align=center height=25>오늘의 일정</TD></TR> </table>
</td></tr></table>
<!-- 공백 -->
<table width='100%' cellpadding=0 cellspacing=0><tr><td height=5></td></tr></table>
<!--<marquee direction=up scrollamount=1 width=100% height=20>-->
<div align=left>
$s_str
</div>
<!--</marquee>-->
</a>
<!-- 공백 -->
<table width='100%' cellpadding=0 cellspacing=0><tr><td height=5></td></tr></table>
";
}
}
if ($s_num != 0) {
$dlink ="<a href='./?doc=bbs/gbform.php&w=&bo_table=$bo_table&link2={$currentday}-$dispnums' title='{$s_num}개의일정이 있습니다. 다시 일정을 등록하시려면 날짜를 클릭하세요.......[올라온 글]* {$wr_subject}'><b> ";
} else {
$dlink = "<a href='./?doc=bbs/gbform.php&w=&bo_table=$bo_table&link2={$currentday}-$dispnums' title='일정등록'>";
}
if($dispnums < 1) {
echo"<td $bgc> </td>";
} else {
echo "<td $bgc onMouseOver=this.style.backgroundColor='#FFCC66' onMouseOut=this.style.backgroundColor='' height=18 align=center>".$dlink."<font face=Tahoma size='1' color='#777777'>".$dispnums."</font></b></a></td>"; }
if(!($changerow % 7)&&($changerow < $tday + $weekdate)) echo "</tr><tr bgcolor='#FFFFFF'>";}$td_tail =7 - ($changerow % 7);if($td_tail != 7){ for($i = 1; $i <= $td_tail; $i++) echo "<td> </td>"; echo "</tr></table>";}
echo($today_schedule);
}
?>
결국 몇시간 동안 이거 수정해 볼려고 아둥 바둥 하다가 (먹지도 못하고 졸립기도 하고 오늘 빵만 한조가리 커피 5-6잔 마셨네요. ^^;) 포기하고 다른거 슬쩍 언져서 대충 오류만 안나게 해놨습니다.
여기서 문제 ...위 소스에서 무엇 때문에 잘 되던 홈페이지 메인이 깨졌을까요?
하나더 황당한건 위 소스에서 오늘의 일정이 입력되면 안깨진다는 거죠.
** 즐겁게 읽으셨죠? ^^; 답변 부탁합니다.
댓글 전체
숨은 그림 찾는 기분입니다.
에러메세지 또는 스크린샷을 해서 문제점을 올렸어야 뭐가 잘못됐는지 이해을 하겠는데 전혀 뭐가 뭔지 모르겠습니다.
에러메세지 또는 스크린샷을 해서 문제점을 올렸어야 뭐가 잘못됐는지 이해을 하겠는데 전혀 뭐가 뭔지 모르겠습니다.