조회수 출력과 날짜 형식 질문드려요 > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

조회수 출력과 날짜 형식 질문드려요 정보

조회수 출력과 날짜 형식 질문드려요

본문

오류가 나는곳의 주소를 알려주시면 더 빠르고 정확하게 답변 받을 수 있습니다.

오류 주소 : http://tingyuan.dothome.co.kr/gnuboard4/bbs/board.php?bo_table=galleryboard

(테스트중인 주소입니다)


제일 중요한 질문을 빼고 글을 올렸다가ㅠㅠ;; 다시 정리해서 올립니다!

* 조회수를 추가하고 싶은데, 관리자만 볼 수 있게 출력하고 싶습니다. (위치는 코멘트 갯수 옆으로...)
* 날짜 형식을 121124 이런 식으로 바꾸고 싶습니다.


팁과 질답방 검색으로 이것저것 적용해 봤는데, 조회수가 아예 사라지거나, 오류가 뜨거나, 전체 출력되거나.... 날짜형식도 자꾸 오류가 뜨네요. 복붙밖에 못 하는 초보라 그런지 아무리 해도 안 되서ㅠㅠ;; 이렇게 질문 올립니다. 도와주시면 정말 감사하겠습니다.

아래에 list.skin.php 붙여 넣겠습니다.





<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

// 제목길이 잘 맞추세요.
$thumb_width = '150';  //썸네일 폭
$thumb_height = '100'; //썸네일 높이
$thumb_quality = '100'; //썸네일 퀄리티_100 이하

if (!function_exists("imagecopyresampled")) alert("GD 2.0.1 이상 버전이 설치되어 있어야 사용할 수 있는 갤러리 게시판 입니다.");

$data_path = $g4[path]."/data/file/$bo_table";
$thumb_path = $data_path.'/thumb';

@mkdir($thumb_path, 0707);
@chmod($thumb_path, 0707);

$mod = $board[bo_gallery_cols];
$td_width = (int)(100 / $mod);

// 선택옵션으로 인해 셀합치기가 가변적으로 변함
$colspan = 5;
if ($is_category) $colspan++;
if ($is_checkbox) $colspan++;
if ($is_good) $colspan++;
if ($is_nogood) $colspan++;

// 제목이 두줄로 표시되는 경우 이 코드를 사용해 보세요.
// <nobr style='display:block; overflow:hidden; width:000px;'>제목</nobr>

/*
$tmp_bo_table = "cm_gallery_request";
$tmp_write_table = $g4[write_prefix] . $tmp_bo_table;
$sql = " select wr_id, wr_subject from $tmp_write_table where wr_is_comment = 0 and wr_comment = 0 order by wr_id desc ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
    echo "<div align=center><a href='$g4[bbs_path]/board.php?bo_table=$tmp_bo_table&wr_id=$row[wr_id]'><span style='height:18px; color:crimson; cursor:pointer;'>★ 이미지 요청 : $row[wr_subject] ★</span></a></div><br>";
}
*/
?>

<style type="text/css">
<!--
.data  { font-family:돋움; font-size:8pt; color:#999999; }
-->
</style>
<!--
    1 ) Reference to the file containing the javascript.
    This file must be located on your server.
-->



<!--
    2) Initialize the hs object and optionally override the settings defined at the top
    of the highslide.js file. The parameter hs.graphicsDir is important!
-->



<!--
    3) These CSS-styles are necessary for the script to work. You may also put
    them in an external CSS-file. See the webpage for documentation.
-->

<style type="text/css">
.highslide {
cursor: url(<?=$board_skin_path?>/highslide/graphics/zoomin.cur), pointer;
    outline: none;
}
.highslide img {
border: 0px solid gray;
}
.highslide:hover img {
border: 2px solid white;
}

.highslide-image {
    border: 2px solid white;
}
.highslide-image-blur {
}
.highslide-caption {
    display: none;
   
    border: 2px solid white;
    border-top: none;
    font-family: Verdana, Helvetica;
    font-size: 10pt;
    padding: 5px;
    background-color: white;
}
.highslide-loading {
    display: block;
color: white;
font-size: 9px;
font-weight: bold;
text-transform: uppercase;
    text-decoration: none;
padding: 3px;
border-top: 1px solid white;
border-bottom: 1px solid white;
    background-color: black;
    /*
    padding-left: 22px;
    background-image: url(highslide/graphics/loader.gif);
    background-repeat: no-repeat;
    background-position: 3px 1px;
    */
}
a.highslide-credits,
a.highslide-credits i {
    padding: 2px;
    color: silver;
    text-decoration: none;
font-size: 10px;
}
a.highslide-credits:hover,
a.highslide-credits:hover i {
    color: white;
    background-color: gray;
}

.highslide-move {
    cursor: move;
}
.highslide-display-block {
    display: block;
}
.highslide-display-none {
    display: none;
}
.control {
float: right;
    display: block;
    position: relative;
margin: 0 5px;
font-size: 9pt;
    font-weight: none;
text-decoration: none;
text-transform: uppercase;
    margin-top: 1px;
    margin-bottom: 1px;
}
.control:hover {
    border-top: 0px solid #333;
    border-bottom: 1px solid #333;
    margin-top: 0;
    margin-bottom: 0;
}
.control, .control * {
color: #666;
}

input.ed { height:20px; border:1px solid #EFEFEF; padding:3px 2px 0 2px; }

</style>

</head>
<!-- 게시판 목록 시작 -->
<table width="<?=$width?>" align=center cellpadding=0 cellspacing=0><tr><td>

<!-- 분류 셀렉트 박스, 게시물 몇건, 관리자화면 링크 -->
<table width="100%" cellspacing="0" cellpadding="0">
<tr height="25">
    <? if ($is_category) { ?><form name="fcategory" method="get"><td width="50%"><select name=sca onchange="location='<?=$category_location?>'+this.value;"><option value=''>전체</option><?=$category_option?></select></td></form><? } ?>
    <td align="right">right top</td>
</tr>
<tr><td colspan='<?=$mod?>' height="1" style="background: url('<?=$board_skin_path?>/img/line.gif');"></td></tr>
</table>

<form name="fboardlist" method="post" style="margin:0px;">
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
<input type="hidden" name="sfl"  value="<?=$sfl?>">
<input type="hidden" name="stx"  value="<?=$stx?>">
<input type="hidden" name="spt"  value="<?=$spt?>">
<input type="hidden" name="page" value="<?=$page?>">
<input type="hidden" name="sw"  value="">
<table width=100% cellpadding=0 cellspacing=0 border=0>


<tr><td colspan='<?=$mod?>' height=25></td></tr>
<tr>
<?
for ($i=0; $i<count($list); $i++)
{
    if ($i && $i%$mod==0)
    echo "</tr><tr><td colspan='{$mod}' height=20></td></tr><tr>";
    $img = "<img src='$board_skin_path/img/noimage.gif' border=0 title='이미지 없음' >";
$image = $list[$i][file][0][file];
    //$thumb = $thumb_path.'/'.$list[$i][wr_id];
    $thumb = $thumb_path.'/'.$list[$i][file][0][file];
    if (!file_exists($thumb))
    {
        $file = $list[$i][file][0][path] .'/'. $list[$i][file][0][file];
        if (preg_match("/\.(jp[e]?g|gif|png)$/i", $file) && file_exists($file))
        {
            $size = @getimagesize($file);
            if ($size[2] == 1)
                $src = imagecreatefromgif($file);
            else if ($size[2] == 2)
                $src = imagecreatefromjpeg($file);
            else if ($size[2] == 3)
                $src = imagecreatefrompng($file);
            else
                continue;

            $rate = $thumb_width / $size[0];
            $height = (int)($size[1] * $rate);

            if ($height < $thumb_height)
                $dst = imagecreatetruecolor($thumb_width, $height);
            else
                $dst = imagecreatetruecolor($thumb_width, $thumb_height);
            /*imagecopyresampled($dst, $src, 0, 0, 0, 0, $thumb_width, $height, $size[0], $size[1]);
            imagejpeg($dst, $thumb_path.'/'.$list[$i][file][0][file], $thumb_quality);
            chmod($thumb_path.'/'.$list[$i][file][0][file], 0606);*/

imagecopyresampled($dst, $src, 0, 0, 0, 0, $thumb_width, $height, $size[0], $size[1]);
imagejpeg($dst, $thumb_path.'/'.$list[$i][file][0][file], $thumb_quality);
chmod($thumb_path.'/'.$list[$i][file][0][file], 0606);
imagejpeg($dst, $thumb_path.'/'.$list[$i][wr_id], $thumb_quality);
chmod($thumb_path.'/'.$list[$i][wr_id], 0606);
}
}

  if (file_exists($thumb) && $list[$i][file][0][file]) {
$img = "<a href='{$list[$i][href]}' onfocus='this.blur()'><img src='{$thumb}' width='{$thumb_width}' height='{$thumb_height}' border=0 style='border:1px solid #f1f1f1;'onmouseover=\"this.style.border='1px solid #e81e22';  this.style.cursor='hand'\"  onmouseout=\"this.style.border='1px solid #f1f1f1';\"></a>";
} else {
preg_match("`<\s*img\s+src\s*=\s*['|\"]?([^'|\"\s]+://[^'|\"\s]+\.(gif|jpe?g|png))['|\"]?\s*[^>]+`i", $list[$i]['wr_content'], $images);

if (!empty($images[1])) {
$img_size = GetImageSize("$images[1]");
if($img_size[0] >= $img_size[1]) {
$imgper = $thumb_width/$img_size[0];
$thumb_height = $img_size[1]*$imgper;
}else{
$imgper = $thumb_height/$img_size[1];
$thumb_width = $img_size[0]*$imgper;
}

$img = "<a href='{$list[$i][href]}' onfocus='this.blur()'><img src='{$images[1]}' width='{$thumb_width}' height='{$thumb_height}' align='absmiddle' border='0'></a>";
} else {
echo "";
}
}

    $style = "";
   
    if ($list[$i][icon_new])
        $style = " style='font-weight:bold;' ";
    $subject = "<img src='$board_skin_path/img/th.gif' height='8'><br><a href='{$list[$i][href]}' onfocus='this.blur()'><span $style>".cut_str($list[$i][subject],18)."</span></a>";

    $comment_cnt = "";
    if ($list[$i][comment_cnt])
        $comment_cnt = " <a href=\"{$list[$i][comment_href]}\"><span style='font-size:7pt;'>{$list[$i][comment_cnt]}</span></a>";

    $bg = "";  //새글?
    if ($list[$i][icon_new])
        $bg="thumb_1_2.gif";
      else
        $bg="thumb_1.gif";


    echo "<td width='{$td_width}%' valign=top style='word-break:break-all;'>\n";
    echo "<table width='100%' cellpadding='0' cellspacing='0' border='0'>\n"; 
    echo "<tr><td height='100%' align='center' valign='top' style='padding:2 0 2 0;'><table width='10' border='0' cellpadding='0' cellspacing='1' bgcolor='ffffff'>
  <tr>
    <td bgcolor='#FFFFFF'><table width='10' border='0' cellpadding='0' cellspacing='0' bgcolor='#F1F1F1'>
      <tr>
        <td bgcolor='#FFFFFF'>$img</td>
      </tr>
    </table></td>
  </tr>
</table>
</td></tr>\n";
echo "<tr><td align='center'>$subject<span style='font-family:Tahoma;font-size:10px;color:#EE5A00;'>{$list[$i][comment_cnt]}</span></td></tr>\n";
echo "<tr><td class='small' align='center'><span style='color:#aaaaaa;'>{$list[$i][datetime]}</span>";
if ($is_checkbox) echo "<input type=checkbox name=chk_wr_id[] value='{$list[$i][wr_id]}'>";
   
    echo "</td></tr>\n";
    echo "</table></td>\n";

}

// 나머지 td
$cnt = $i%$mod;
if ($cnt)
    for ($i=$cnt; $i<$mod; $i++)
        echo "<td width='{$td_width}%'>&nbsp;</td>";
?><div class='highslide-caption' id='the-caption'>
    <a href="#" onclick="return hs.previous(this)" class="control" style="float:left; display: block">이전</a>
<a href="#" onclick="return hs.next(this)" class="control" style="float:left; display: block; text-align: right; margin-left: 4px">다음</a>
    <a href="#" onclick="return hs.close(this)" class="control">닫기</a>
    <a href="#" class="highslide-move control">화면이동</a>
    <div style="clear:both"></div>
</div>
</tr>
<tr><td colspan='<?=$mod?>' height=20></td></tr>
<tr><td colspan=<?=$mod?> height=1 bgcolor=#cccccc></td></tr>

<? if (count($list) == 0) { echo "<tr><td colspan='$mod' height=100 align=center>게시물이 없습니다.</td></tr>"; } ?>
<tr><td colspan=<?=$mod?> bgcolor=#EEEEEE height=1>
</table>
</form>
<div style="clear:both; margin-top:7px; height:31px;">
    <div style="float:left;">
    <? if ($list_href) { ?>
    <a href="<?=$list_href?>"><img src="<?=$board_skin_path?>/img/btn_list.gif" border="0" align=absmiddle></a>
    <? } ?>
    <? if ($is_checkbox) { ?>
    <a href="javascript:select_delete();"><img src="<?=$board_skin_path?>/img/btn_select_delete.gif" border="0" align=absmiddle></a>
    <a href="javascript:select_copy('copy');"><img src="<?=$board_skin_path?>/img/btn_select_copy.gif" border="0" align=absmiddle></a>
    <a href="javascript:select_copy('move');"><img src="<?=$board_skin_path?>/img/btn_select_move.gif" border="0" align=absmiddle></a>
    <? } ?>
    </div>

    <div style="float:right;">
    <? if ($write_href) { ?><a href="<?=$write_href?>"><img src="<?=$board_skin_path?>/img/btn_write.gif" border="0"></a><? } ?>
    </div>
</div>

<div style="height:1px; line-height:1px; font-size:1px; background-color:#eee; clear:both;">&nbsp;</div>
<div style="height:1px; line-height:1px; font-size:1px; background-color:#ddd; clear:both;">&nbsp;</div>

<!-- 페이지 -->
<div style="text-align:center; line-height:30px; clear:both; margin:5px 0 10px 0; padding:5px 0; font-family:gulim;">

    <? if ($prev_part_href) { echo "<a href='$prev_part_href'><img src='$board_skin_path/img/page_search_prev.gif' border=0 align=absmiddle title='이전검색'></a>"; } ?>
    <?
    // 기본으로 넘어오는 페이지를 아래와 같이 변환하여 이미지로도 출력할 수 있습니다.
    //echo $write_pages;
    $write_pages = str_replace("처음", "<img src='$board_skin_path/img/page_begin.gif' border='0' align='absmiddle' title='처음'>", $write_pages);
    $write_pages = str_replace("이전", "<img src='$board_skin_path/img/page_prev.gif' border='0' align='absmiddle' title='이전'>", $write_pages);
    $write_pages = str_replace("다음", "<img src='$board_skin_path/img/page_next.gif' border='0' align='absmiddle' title='다음'>", $write_pages);
    $write_pages = str_replace("맨끝", "<img src='$board_skin_path/img/page_end.gif' border='0' align='absmiddle' title='맨끝'>", $write_pages);
    $write_pages = preg_replace("/<span>([0-9]*)<\/span>/", "<b><span style=\"color:#B3B3B3; font-size:12px;\">$1</span></b>", $write_pages);
    $write_pages = preg_replace("/<b>([0-9]*)<\/b>/", "<b><span style=\"color:#4D6185; font-size:12px; text-decoration:underline;\">$1</span></b>", $write_pages);
    ?>
    <?=$write_pages?>
    <? if ($next_part_href) { echo "<a href='$next_part_href'><img src='$board_skin_path/img/page_search_next.gif' border=0 align=absmiddle title='다음검색'></a>"; } ?>

</div>

<!-- 버튼 링크 -->
<form name=fsearch method=get style="margin:0px;">
<input type=hidden name=bo_table value="<?=$bo_table?>">
<input type=hidden name=sca      value="<?=$sca?>">
<table width=100% cellpadding=0 cellspacing=0>
<tr>

<td width="100%" height="30" align="right">
<input type="hidden" name=sfl value='wr_subject||wr_content'><input type="hidden" name=sop value="and">
<input name=stx maxlength=15 size=13 itemname="검색어" required value="<?=$stx?>" class="ed"><input type=image src="<?=$board_skin_path?>/img/search.gif" border=0 align=absmiddle></td>
</tr>
<tr><td height="14"></td></tr>
</table>
</form>

</td></tr></table>

<script language="JavaScript">
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
if ('<?=$stx?>') {
    document.fsearch.sfl.value = '<?=$sfl?>';

    if ('<?=$sop?>' == 'and')
        document.fsearch.sop[0].checked = true;

    if ('<?=$sop?>' == 'or')
        document.fsearch.sop[1].checked = true;
} else {
    document.fsearch.sop[0].checked = true;
}
</script>

<? if ($is_checkbox) { ?>
<script language="JavaScript">
function all_checked(sw) {
    var f = document.fboardlist;

    for (var i=0; i<f.length; i++) {
        if (f.elements[i].name == "chk_wr_id[]")
            f.elements[i].checked = sw;
    }
}

function check_confirm(str) {
    var f = document.fboardlist;
    var chk_count = 0;

    for (var i=0; i<f.length; i++) {
        if (f.elements[i].name == "chk_wr_id[]" && f.elements[i].checked)
            chk_count++;
    }

    if (!chk_count) {
        alert(str + "할 게시물을 하나 이상 선택하세요.");
        return false;
    }
    return true;
}

// 선택한 게시물 삭제
function select_delete() {
    var f = document.fboardlist;

    str = "삭제";
    if (!check_confirm(str))
        return;

    if (!confirm("선택한 게시물을 정말 "+str+" 하시겠습니까?\n\n한번 "+str+"한 자료는 복구할 수 없습니다"))
        return;

    f.action = "./delete_all.php";
    f.submit();
}

// 선택한 게시물 복사 및 이동
function select_copy(sw) {
    var f = document.fboardlist;

    if (sw == "copy")
        str = "복사";
    else
        str = "이동";
                     
    if (!check_confirm(str))
        return;

    var sub_win = window.open("", "move", "left=50, top=50, width=500, height=550, scrollbars=1");

    f.sw.value = sw;
    f.target = "move";
    f.action = "./move.php";
    f.submit();
}
</script>
<? } ?>
<!-- 게시판 목록 끝 -->
  • 복사

댓글 전체

아래처럼 바꺼보세요. 정확한 답은 아닙니다. 정확한 답은 직접 찾아보실수 있을꺼 같네요

[변경전]
echo "<tr><td align='center'>$subject<span style='font-family:Tahoma;font-size:10px;color:#EE5A00;'>{$list[$i][comment_cnt]}</span></td></tr>\n";
echo "<tr><td class='small' align='center'><span style='color:#aaaaaa;'>{$list[$i][datetime]}</span>";



[변경후]
echo "<tr><td align='center'>$subject<span style='font-family:Tahoma;font-size:10px;color:#EE5A00;'>{$list[$i][comment_cnt]}{$list[$i][wr_hit]}</span></td></tr>\n";
echo "<tr><td class='small' align='center'><span style='color:#aaaaaa;'>{date("YMD", strtotime($list[$i][wr_datetime]))}</span>";
흥힝힝님 답변 감사합니다^^

위의 코멘트와 조회수의 경우 잘 출력이 됩니다. 하지만 조회수의 경우 <?if($is_admin){?>
내용 <?}?> 이걸 사용해도 전체 출력이 됩니다... 조회수는 관리자에게만 출력되었으면 좋겠는데... 혹시 다른 방법이 있을까요?

그리고 아래 날짜의 경우 Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /host/home3/tingyuan/html/gnuboard4/skin/board/gall_basic_euckr/list.skin.php on line 278 이런 에러 메시지가 자꾸만 출력됩니다ㅜㅜ; ㅎㅎ;

답변 너무 감사한데, 한 번만 더 도움주시면 감사하겠습니다(__)
$bg = "";  //새글? <---이런 행 보이죠 바로 윗줄에 아래처럼 추가해보세요

if($is_admin) $list[$i][comment_cnt].=" 조회 : ".$list[$i][wr_hit]; // 조회수

$list[$i][datetime]=date("ymd", strtotime($list[$i][wr_datetime]) );// 날짜
© SIRSOFT
현재 페이지 제일 처음으로