테스트 사이트 - 개발 중인 베타 버전입니다

최신글 자동갱신 하는법 채택완료

경하귀요밍 9년 전 조회 4,004

제가 달력을 이용한 일정게시판을 만들었는데요,, 이 게시판에서는 그날의 일정만 보여주도록 만들었습니다. 예를들어 22일이면 22일에 저장된 글만 나오게 만들었는데요

 

최신글에서 이 게시판을 불러오면 해당 날짜에 맞게 자동으로 갱신되지않고 수동으로 서버에 계속 올려줘야 날짜가 변경되더군요.. 그래서 매일 해당 게시판처럼 자동으로 갱신되게 하려면 어떻게 해야하나요??

<최신글>

</span></p><p><span style="font-size: 9pt;"><?php for ($i=0; $i<count($list); $i++) {  ?></span></p><p><span style="font-size: 9pt;"><?php echo substr($list[$i]['wr_2'],0,4).".".substr($list[$i]['wr_2'],4,2).".".substr($list[$i]['wr_2'],6,2); ?></div></span></p><p><span style="font-size: 9pt;">      <?php</span></p><p><span class="Apple-tab-span" style="white-space: pre; font-size: 9pt;">	</span><span style="font-size: 9pt;">  $str1 = $list[$i]['wr_content'];</span></p><p><span class="Apple-tab-span" style="white-space: pre; font-size: 9pt;">	</span><span style="font-size: 9pt;">  $str2 = $list[$i]['wr_3'];</span></p><p><span style="font-size: 9pt;">            echo "<a href=\"".$list[$i]['href']."\">";</span></p><p><span class="Apple-tab-span" style="white-space: pre; font-size: 9pt;">				</span><span style="font-size: 9pt;">echo str_replace(',', '
', $str1);</span></p><p><span class="Apple-tab-span" style="white-space: pre; font-size: 9pt;">				</span><span style="font-size: 9pt;">echo str_replace(',', '
', $str2);</span></p><p><span style="font-size: 9pt;">            echo "</a>";</span></p><p><span style="font-size: 9pt;">     ?></span></p><p><span style="font-size: 9pt;">    <?php }  ?></span></p><p><span style="font-size: 9pt;">    <?php if (count($list) == 0) { //게시물이 없을 때  ?></span></p><p><span style="font-size: 9pt;">    <div>게시물이 없습니다.</div></span></p><p><span style="font-size: 9pt;">    <?php }  ?></span></p><p><span style="font-size: 9pt;">

<게시판>

</span></p><p><span style="font-size: 9pt;">...</span></p><p><span style="font-size: 12px;"><?</span></p><p><span style="font-size: 12px;">$cday = 1;</span></p><p><span style="font-size: 12px;">$sel_mon = sprintf("%02d",$month);</span></p><p><span class="Apple-tab-span" style="white-space: pre; font-size: 12px;">	</span></p><p><span style="font-size: 12px;">$query = "SELECT * FROM $write_table WHERE left(wr_1,6) <= '$year$sel_mon' and left(wr_2,6) >= '$year$sel_mon' ORDER BY wr_id ASC";</span></p><p><span style="font-size: 12px;">$result = sql_query($query);</span></p><p><span style="font-size: 12px;">$j=0; // layer id</span></p><p><span style="font-size: 12px;">// 내용을 보여주는 부분</span></p><p><span style="font-size: 12px;">while ($row = sql_fetch_array($result)) {  // 제목글 뽑아서 링크 문자열 만들기..</span></p><p><span style="font-size: 12px;">  if( substr($row[wr_1],0,6) <  $year.$sel_mon ) {</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span> $start_day =1; </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span> $start_day= (int)$start_day;</span></p><p><span style="font-size: 12px;">  } else {</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span> $start_day = substr($row[wr_1],6,2);</span></p><p><span style="font-size: 12px;">     $start_day= (int)$start_day;</span></p><p><span style="font-size: 12px;">  }</span></p><p><span style="font-size: 12px;"> </span></p><p><span style="font-size: 12px;">  if( substr($row[wr_2],0,6) >  $year.$sel_mon ) {</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span> $end_day = $lastday[$month];</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span> $end_day= (int)$end_day;</span></p><p><span style="font-size: 12px;">  } else {</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span> $end_day = substr($row[wr_2],6,2);</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span> $end_day= (int)$end_day;</span></p><p><span style="font-size: 12px;">  }</span></p><p><span style="font-size: 12px;"> </span></p><p><span style="font-size: 12px;">  for ($i = $start_day ; $i <= $end_day;  $i++) {</span></p><p><span style="font-size: 12px;"> </span></p><p><span style="font-size: 12px;">    $j++; // layer ID</span></p><p><span style="font-size: 12px;"> </span></p><p><span style="font-size: 12px;">    if ($member[mb_level] < $board[bo_read_level]) {</span></p><p><span style="font-size: 12px;">      $showLayer="" ;</span></p><p><span style="font-size: 12px;">    } else { </span></p><p><span style="font-size: 12px;">      $showLayer=" onmouseover=\"PopupShow('".$j."')\" onmouseout=\"PopupHide('".$j."')\" ";</span></p><p><span style="font-size: 12px;">    }</span></p><p><span style="font-size: 12px;">?></span></p><p><span style="font-size: 12px;"><?</span></p><p><span style="font-size: 12px;">    $html = 0;</span></p><p><span style="font-size: 12px;">    if (strstr($row[wr_option], "html1"))</span></p><p><span style="font-size: 12px;">      $html = 1;</span></p><p><span style="font-size: 12px;">    else if (strstr($row[wr_option], "html2"))</span></p><p><span style="font-size: 12px;">      $html = 2;</span></p><p><span style="font-size: 12px;">      $viewlist = cut_str(conv_content($row[wr_content], $html),200,"…");</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>  $viewdiner = cut_str(conv_content($row[wr_3], $html),200,"…");</span></p><p><span style="font-size: 12px;">?></span></p><p><span style="font-size: 12px;"><?</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>//오늘 스케줄 구하기</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>if ($row[wr_id] != $sc_id && date('Ymd', strtotime($row[wr_1])) <= date(Ymd) && date('Ymd', strtotime($row[wr_2])) >= date(Ymd)) {</span></p><p><span class="Apple-tab-span" style="white-space: pre; font-size: 12px;">		</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$today_schedule .= "<div class='food_head'>".substr($row['wr_1'],4,2)." 월 ".substr($row['wr_1'],6,2)." 일 <img src='../images/icon_today.png'></div>";</span></p><p> </p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$str1 = $viewlist;</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$str2 = $viewdiner;</span></p><p><span class="Apple-tab-span" style="white-space: pre; font-size: 12px;">		</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$view1 = str_replace(',', '
', $str1);</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$view2 = str_replace(',', '
', $str2);</span></p><p> </p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$today_schedule .= "<a href='".G5_BBS_URL."/board.php?bo_table=$bo_table&year=$year&month=$month&wr_id=$row[wr_id]&sc_no=$sc_no'>".$view1."</a>";</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$today_schedule .= "<a href='".G5_BBS_URL."/board.php?bo_table=$bo_table&year=$year&month=$month&wr_id=$row[wr_id]&sc_no=$sc_no'>".$view2."</a>";</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>}</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$sc_id = $row[wr_id];</span></p><p><span style="font-size: 12px;">    }</span></p><p><span style="font-size: 12px;">  }</span></p><p><span style="font-size: 12px;">  // 달력의 틀을 보여주는 부분</span></p><p><span style="font-size: 12px;">  $temp = 7- (($lastday[$month]+$dayoftheweek)%7);</span></p><p><span style="font-size: 12px;">  if ($temp == 7) $temp = 0;</span></p><p><span style="font-size: 12px;">     $lastcount = $lastday[$month]+$dayoftheweek + $temp;</span></p><p><span style="font-size: 12px;">  for ($iz = 1; $iz <= $lastcount; $iz++) { // 42번을 칠하게 된다.</span></p><p><span style="font-size: 12px;">    $bgcolor = "#ffffff";  // 쭉 흰색으로 칠하고</span></p><p><span style="font-size: 12px;">    if ($b_year==$year && $b_mon==$month && $b_day==$cday) $bgcolor = "#003876";   // 오늘날짜 표기</span></p><p><span style="font-size: 12px;">    if (($iz%7) == 1) echo ("<tr>"); // 주당 7개씩 한쎌씩을 쌓는다.</span></p><p><span style="font-size: 12px;">    if ($dayoftheweek < $iz  &&  $iz <= $lastday[$month]+$dayoftheweek)<span class="Apple-tab-span" style="white-space:pre">	</span>{</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>// 전체 루프안에서 숫자가 들어가는 셀들만 해당됨</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>// 즉 11월 달에서 1일부터 30 일까지만 해당</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>$daytext = "$cday";   // $cday 는 숫자 예> 11월달은 1~ 30일 까지</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>//$daytext 은 셀에 써질 날짜 숫자 넣을 공간</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>$daycontcolor = "" ; </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>$daycolor = ""; </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>if ($iz%7 == 1) $daycolor = "red"; // 일요일</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>if ($iz%7 == 0) $daycolor = "blue"; // 토요일</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>if ($b_year==$year && $b_mon==$month && $b_day==$cday) $daycolor = "white";</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>// 여기까지 숫자와 들어갈 내용에 대한 변수들의 세팅이 끝나고 </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>// 이제 여기 부터 직접 셀이 그려지면서 그 안에 내용이 들어 간다.</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>echo ("<td width=$col_width height=$col_height bgcolor=$bgcolor valign=top>");</span></p><p><span style="font-size: 12px;"> </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>$f_date = $year.sprintf("%02d",$month).sprintf("%02d",$cday);</span></p><p><span style="font-size: 12px;"> </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>// 기념일 파일 내용 비교위한 변수 선언, 월과 일을 두자리 포맷으로 고정</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>if (strlen($month) == 1) { </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$monthp = "0".$month ;</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>} else {</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$monthp = $month ; </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>}</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>if (strlen($cday) == 1) {</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$cdayp = "0".$cday ;</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>} else { </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$cdayp = $cday ; </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>}</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>$memday = $year.$monthp.$cdayp;</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>$daycont = "" ;</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>// 기념일(양력) 표시</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>for($i=0 ; $i < sizeof($dayfile) ; $i++) {  // 파일 첫 행부터 끝행까지 루프</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>$arrDay = explode("|", $dayfile[$i]);</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>if($memday == $year.$arrDay[0]) {</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">			</span>$daycont = $arrDay[1]; </span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">			</span>$daycontcolor = $arrDay[2];</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">			</span>if(substr($arrDay[2],0,3)=="red") $daycolor = "red"; // 공휴일은 날짜를 빨간색으로 표시</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">		</span>}</span></p><p><span style="font-size: 12px;"><span class="Apple-tab-span" style="white-space:pre">	</span>}</span></p><p><span style="font-size: 12px;"> </span></p><p><span style="font-size: 12px;">    if ($write_href) { </span></p><p><span style="font-size: 12px;">      // $write_href (글쓰기 권한)이 있으면</span></p><p><span style="font-size: 12px;">      // 날짜를 클릭하면 글씨쓰기가 가능한 링크를 넣어서 출력하기</span></p><p><span style="font-size: 12px;">      echo "<a href='".G5_BBS_URL."/board.php?bo_table=$bo_table&year=$year&month=$month&wr_id=$row[wr_id]&sc_no=$sc_no'><font color='$daycolor'>$daytext</font></a>$moonday <font color='$daycontcolor'>$daycont</font>$blank $annivmoonday";</span></p><p><span style="font-size: 12px;">    } else { // 글쓰기 권한이 없으면 글쓰기 링크는 넣지 않고 그냥 숫자와 기념일 내용만 출력하기  </span></p><p><span style="font-size: 12px;">      echo "<a href='".G5_BBS_URL."/board.php?bo_table=$bo_table&year=$year&month=$month&wr_id=$row[wr_id]&sc_no=$sc_no'><font color='$daycolor'>$daytext</font></a>";</span></p><p><span style="font-size: 12px;">    }</span></p><p><span style="font-size: 12px;">    echo $html_day[$cday];</span></p><p><span style="font-size: 12px;">    echo ("</td>");  // 한칸을 마무리</span></p><p><span style="font-size: 12px;">    $cday++; // 날짜를 카운팅</span></p><p><span style="font-size: 12px;">  } </span></p><p><span style="font-size: 12px;">  // 유효날짜가 아니면 그냥 회색을 칠한다.</span></p><p><span style="font-size: 12px;">  else { echo ("     <td width=$col_width height=$col_height bgcolor=#ffffff valign=top> </td>"); }</span></p><p><span style="font-size: 12px;">  if (($iz%7) == 0) echo ("  </tr>");</span></p><p><span style="font-size: 12px;">   </span></p><p><span style="font-size: 12px;">} // 반복구문이 끝남</span></p><p> </p><p><span style="font-size: 12px;">?></span></p><p><span style="font-size: 12px;">...</span></p><p><span style="font-size: 12px;">

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트

최신글 추출을 latest 스킨을 사용하시나요?

그렇다면 latest.lib.php 파일을 좀 수정해야할 필요가 있습니다.

그럴경우 제가 글로써 설명해드리기 어렵고, latest.lib.php 파일도 작업을해야하니..

 

최신글 추출부분만 따로 제작하는걸 추천해드립니다.

 

 

예제)

 

$ymd = date('Ymd'); $sql = " select * from 테이블명 where   left(wr_1,6) = '$ymd' "; $result = sql_query($sql);

for($i=0; $i<$row=sql_fetch_array($result); $i++)  {

echo substr($row['wr_2'],0,4).".".substr($row['wr_2'],4,2).".".substr($row['wr_2'],6,2);

$str1 = $row['wr_content']; $str2 = $row['wr_3']; echo ""; echo str_replace(',', ' ', $str1); echo str_replace(',', ' ', $str2); echo "";

}

 

이런식으로 따로 쿼리로 추출.. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

경하귀요밍
9년 전
진짜 죄송한데.. 테이블 명에 제가 사용하는 게시판 테이블이름이 g5_write_aa 라고가정했을때
g5_write_aa 를 넣었는데 공백으로 나오면 어떻게하나요..?? sql 외부접근도 풀어놓은상태입니다ㅜㅜ
혹시몰라 'g5_write_aa' 처럼 ''도 넣어봤는데도 공백만나옵니다..ㅜㅜ
<?php
$ymd = date('Ymd');
$sql = " select * from g5_write_aa where left(wr_1,6) = '$ymd' ";
$result = sql_query($sql);
for($i=0; $i<$row=sql_fetch_array($result); $i++) {
?>
<?php echo substr($row['wr_1'],0,4).".".substr($row['wr_1'],4,2).".".substr($row['wr_1'],6,2); //제목 ?>

<?php
$str1 = $row['wr_content'];
$str2 = $row['wr_3'];

echo "<a href=\"".$row['href']."\">";
echo str_replace(',', '<br>', $str1);
echo str_replace(',', '<br>', $str2);
echo "</a>";
?>

<?php } ?>
경하귀요밍
9년 전
아 해결했습니다!! left(wr_1,6) >>left(wr_1,8) 로 하니 나오네요 ㅎㅎ
예제까지 작성해주시면서 답변 정말 감사합니다!!(__) :D

댓글을 작성하려면 로그인이 필요합니다.

최신글 올려주신건  쿼리를 가지고 보여지는 부분이고

쿼리쪽을 봐야 알거같아요.

 

$ymd = date('Ymd');

$query = "SELECT * FROM $write_table WHERE left(wr_1,6) = '$ymd' ";

이런식의 쿼리가 있어야하겠죠..

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

경하귀요밍
9년 전
음.. 아래 게시판에서 보여주는 부분도있는데 그곳에
$cday = 1;
$sel_mon = sprintf("%02d",$month);

$query = "SELECT * FROM $write_table WHERE left(wr_1,6) <= '$year$sel_mon' and left(wr_2,6) >= '$year$sel_mon' ORDER BY wr_id ASC";
라고 쿼리가 있긴하네용
최신글 쿼리문은
if (!G5_USE_CACHE || !file_exists($cache_file)) {
$list = array();

$sql = " select * from {$g5['board_table']} where bo_table = '{$bo_table}' ";
$board = sql_fetch($sql);
입니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인