다용도 목록 게시판에서 목록에 사진이 안떠여ㅡㅡ > 그누4 질문답변

그누4 질문답변

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

다용도 목록 게시판에서 목록에 사진이 안떠여ㅡㅡ 정보

다용도 목록 게시판에서 목록에 사진이 안떠여ㅡㅡ

본문

 
 
아래...그누봇님도 다용도게시판에대해 질문을 하셨는데....저도 다용도 게시판에 질문 드립니다^^
 
목록에서는 이미지가 안나오네여ㅠㅠ게시판 뷰 화면에서는 잘 나오는데......
 
저번에 설치하였을때는 잘되던데...
 
새로 설치하니깐 잘 안되네여ㅡㅡ;;;
 
 
글쓰기도 가능하니 테스트 해보시고 답변 부탁드립니다..

댓글 전체

제가

>> 어떤 변수를 적용하셨는지요? 를 왜 했을까요?.....

이미지 불러오는 데 사용한 변수 부분을 알고 싶어서 그런게 아닐지?.......^^
list.skin.php 파일입니다...

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

if (!$board[bo_1]) alert("게시판 설정 : 여분 필드 1 에 목록에서 보여질 이미지의 폭을 설정하십시오. (픽셀 단위)");
if (!$board[bo_2]) alert("게시판 설정 : 여분 필드 2 에 목록에서 보여질 이미지의 질(quality)을 비율로 설정하십시오. (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>
?>

<!-- 게시판 목록 시작 -->
<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?>'+encodeURI(this.value);"><option value=''>전체</option><?=$category_option?></select></td></form><? } ?>
    <td align="right">
        등록회원 <?=number_format($total_count)?>명
        <? if ($rss_href) { ?><a href='<?=$rss_href?>'><img src='<?=$board_skin_path?>/img/btn_rss.gif' border=0 align=absmiddle></a><?}?>
        <? if ($admin_href) { ?><a href="<?=$admin_href?>"><img src="<?=$board_skin_path?>/img/admin_button.gif" title="관리자" width="44" height="21" border="0" align="absmiddle"></a><?}?></td>
</tr>
<tr><td height=5></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>
<tr>
<?
for ($i=0; $i<count($list); $i++)
{
    if ($i && $i%$mod==0)
        echo "</tr><tr>";

    $img = "<img src='$board_skin_path/img/noimage.gif' border=0 width='$board[bo_1]' title='이미지 없음'>";
    $thumb = $thumb_path.'/'.$list[$i][wr_id];
    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
                break;

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

            $dst = imagecreatetruecolor($board[bo_1], $height);
            imagecopyresampled($dst, $src, 0, 0, 0, 0, $board[bo_1], $height, $size[0], $size[1]);
            imagepng($dst, $thumb_path.'/'.$list[$i][wr_id], $board[bo_2]);
            chmod($thumb_path.'/'.$list[$i][wr_id], 0606);
        }
    }

    if (file_exists($thumb))
        $img = "<img src='$thumb' border=0>";

    $style = "";
    if ($list[$i][icon_new])
        $style = ""; // 읽지 않은 글??  style='font-weight:bold;'  추가
    $subject = "<span $style>". $list[$i][subject] ."</span>";
    $list[$i][wr_5] = cut_str(get_text($list[$i][wr_5]), 18); //여분필드5 글자르기
    $list[$i][wr_6] = cut_str(get_text($list[$i][wr_6]), 18); //여분필드6 글자르기

    $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>";

    echo "<td width='{$td_width}%' valign=bottom style='word-break:break-all;'>";
    echo "<table width=100%>";
    echo "<tr><td width=100% height=1></td></tr><tr><td style='width:100%;height:120px;border:1px solid #CCCCCC; padding:2px'><table>";
    echo "<tr><td align=center width='100' height='120' style='width:100px;height:120px; padding:1px'><div style='width:100px; height:120px; position: relative; overflow:hidden;' align=center><a href='{$list[$i][href]}'>$img</a></div></td>";
    echo "<td align=center width=100% height=100%><table width=100% height=100%  style=' padding:3px;table-layout:fixed;'><tr><td width=100% height=25 align=left valign=middle>{$board[bo_3]} : <a href='{$list[$i][href]}'><font size=2 color=#378795><B>$subject</B></font></a>{$comment_cnt}</td></tr>";
    if ($is_category) echo "<tr><td width=100% height=25 align=left>{$board[bo_4]} : <a href='{$list[$i][ca_name_href]}'><font color=#999999>[{$list[$i][ca_name]}]</font></a></td></tr>";
    echo "<tr><td width=100% height=25 align=left>{$board[bo_5]} : {$list[$i][wr_5]}</td></tr>";
    echo "<tr><td width=100% height=25 align=left>{$board[bo_6]} : {$list[$i][wr_6]}</td></tr>";
    if ($is_checkbox) echo "<tr><td height=20 align=right><input type=checkbox name=chk_wr_id[] value='{$list[$i][wr_id]}'></td></tr>";
    echo "</table></td></tr>";
    echo "</table></td></tr><tr><td height=1></td></tr>";
    echo "</table></td>\n";
}

// 나머지 td
$cnt = $i%$mod;
if ($cnt)
    for ($i=$cnt; $i<$mod; $i++)
        echo "<td width='{$td_width}%'>&nbsp;</td>";
?>
</tr>

<? if (count($list) == 0) { echo "<tr><td colspan='$mod' height=100 align=center>등록된회원이 없습니다.</td></tr>"; } ?>
</table>
</form>

<!-- 페이지 -->
<table width="100%" cellspacing="0" cellpadding="0">
<tr>
    <td height="37" align="center">
        <table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>
            <td width="100%" align="center">
                <? if ($prev_part_href) { echo "<a href='$prev_part_href'><img src='$board_skin_path/img/search_prev.gif' width=50 height=20 border=0 align=absmiddle title='이전검색'></a>"; } ?>
                <?
                // 기본으로 넘어오는 페이지를 아래와 같이 변환하여 이미지로도 출력할 수 있습니다.
                //echo $write_pages;
                $write_pages = str_replace("처음", "<img src='$board_skin_path/img/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/end.gif' border='0' align='absmiddle' title='맨끝'>", $write_pages);
                $write_pages = preg_replace("/<span>([0-9]*)<\/span>/", "<font style=\"font-family:돋움; font-size:9pt; color:#797979\">$1</font>", $write_pages);
                $write_pages = preg_replace("/<b>([0-9]*)<\/b>/", "<font style=\"font-family:돋움; font-size:9pt; color:orange;\">$1</font>", $write_pages);
                ?>
                <?=$write_pages?>
                <? if ($next_part_href) { echo "<a href='$next_part_href'><img src='$board_skin_path/img/search_next.gif' width=50 height=20 border=0 align=absmiddle title='다음검색'></a>"; } ?>
            </td>
        </tr>
        </table></td>
</tr>
</table>

<!-- 버튼 링크 -->
<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="50%" height="40">
        <? if ($list_href) { ?><a href="<?=$list_href?>"><img src="<?=$board_skin_path?>/img/btn_list.gif" border="0"></a><? } ?>
        <? if ($write_href) { ?><a href="<?=$write_href?>"><img src="<?=$board_skin_path?>/img/btn_write.gif" border="0"></a><? } ?>
        <? if ($is_checkbox) { ?>
            <a href="javascript:select_delete();"><img src="<?=$board_skin_path?>/img/btn_select_delete.gif" border="0"></a>
            <a href="javascript:select_copy('copy');"><img src="<?=$board_skin_path?>/img/btn_select_copy.gif" border="0"></a>
            <a href="javascript:select_copy('move');"><img src="<?=$board_skin_path?>/img/btn_select_move.gif" border="0"></a>
        <? } ?>
    </td>
    <td width="50%" align="right">
        <select class=ed name=sfl>
            <option value='wr_subject||wr_content'>이름+자기소개</option>
            <option value='wr_subject'>이름</option>
            <option value='wr_content'>자기소개</option>
            <option value='mb_id'>회원아이디</option>
            <option value='wr_name'>글쓴이</option>
        </select>
    <input class=ed name=stx maxlength=15 size=10 itemname="검색어" required value="<?=$stx?>">
<select class=ed name=sop>
            <option value=and>and</option>
            <option value=or>or</option>
        </select>
            <input type=image src="<?=$board_skin_path?>/img/search_btn.gif" border=0 align=absmiddle></td>
</tr>
</table>
</form>

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

<script language="JavaScript">
if ("<?=$sca?>") document.fcategory.sca.value = "<?=$sca?>";
if ("<?=$stx?>") {
    document.fsearch.sfl.value = "<?=$sfl?>";
    document.fsearch.sop.value = "<?=$sop?>";
}
</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=396, height=550, scrollbars=1");

    f.sw.value = sw;
    f.target = "move";
    f.action = "./move.php";
    f.submit();
}
</script>
<? } ?>
<!-- 게시판 목록 끝 -->
$thumb = $thumb_path.'/'.$list[$i][wr_id];
$file = $list[$i][file][0][path] .'/'. $list[$i][file][0][file];

==>

$thumb = $thumb_path.'/'.urlencode($list[$i][wr_id]);
$file = $list[$i][file][0][path] .'/'. urlencode($list[$i][file][0][file]);

찾으셔서 한 번 바꾸어 보세요.....다 찾아가서 마지막에 화일을 못끌어 오는듯 합니다.
혹 계정 옮기셨나요?....
혹 게시판 설정하라는 부분은 제대로 하셨나요?....
GD버전이 2.0.1 이상 되나요?....... 3가지 중에 답이 있을 듯 합니다~~~
전 계정으로 이 스킨으로 사용하다..

계정 옮기고 또 그대로 올렸어요....

새로 다운받아 올려보고, 전 계정에있던 스킨으로도 사용해봤는데도 안되네요ㅠ

GD버전은 어디서 확인하죠..?ㅡㅡ^
사진등록을 하고 목록가기를 누르면 아래 에러가 나네요?
등록회원 4명 
 

     
Fatal error: imagepng(): gd-png: fatal libpng error: Incompatible libpng version in application and library in /home/spectrum/user/home/skin/board/agent_member/list.skin.php on line 80
저위에 rolo 님의 말씀처럼 섬네일 사이즈가 0 인듯 합니다..

섬네일생성이 제대로 안되는것 같습니다..

서버의 php 버전이 어떻게 되나요?


data / file / 게시판명 / thumb 폴더내의 섬네일을 삭제하고 다시 실행해 보세요..
새로고침을 섬네일 숫자만큼 눌러야 됩니다...
어떤걸 어떻게 알려드려야할지 몰라서 phpinfo에서 버전이란 버전은 전부 추출 합니다..

php 버전: 4.4.1
시스템: Linux h156x143.ziozio.net 2.4.31
아파치: Apache/1.3.33 (Unix) mod_throttle/3.1.2 PHP/4.4.1
아파치API: 19990320
GDBM: 1.8.0
DOM/XML API: 20020815
libxml: 20419
EXIF Version: 1.4 $Id: exif.c,v 1.118.2.37.2.3 2005/10/10 06:07:16 helly Exp $
Supported EXIF: 0220
GD버전: bundled (2.0.28 compatible)
iconv library: 2.2.5
IMAP c-Client: 2001
Client API version:  4.0.24
OpenSSL Version:  OpenSSL 0.9.6b [engine] 9 Jul 2001
PCRE Library Version:  6.2 01-Aug-2005
PECL Module version:  1.0.3 $Id: sqlite.c,v 1.62.2.25 2004/07/10 12:25:33 wez Exp $
EXPAT Version:  expat_1.95.2
Compiled Version:  1.2.2 
Linked Version:  1.2.2
INIT_VERSION:  sysvinit-2.84
Fatal error: imagepng(): gd-png: fatal libpng error: Incompatible libpng version in application and library in /home/spectrum/user/home/skin/board/agent_member/list.skin.php on line 80

위 에러 메세지를 봐서는

게시판 관리에서
여분필드 1 //이미지 사이즈
여분필드 2 //이미지 퀄리티  ← 이걸 입력안하셨는것 같은데요....^^

이게 아니라면 섬네일 폴더의 퍼미션을 살펴 보세요...
여분필드 1 → 100
여분필드 2 → 200

섬네일 폴더 퍼미션 707에서 777로 변경 했어여...

그런데도 아무 변화가 없는걸봐서...php버전이 안맞는듯 싶기도하고...ㅠㅜ
여분필드 1 → 100
여분필드 2 → 100 이하로 입력하세요..

새로 입력하셨다면 섬네일폴더내의 섬네일파일들을 삭제해주시고,
섬네일의 갯수만큼 새로고침하셔야 섬네일이 새로 만들어 집니다...^^
지금까지 일련의 과정으로 볼때 서버의 gd모듈에 문제가 있는듯 합니다..

현재 사용된 스킨의 섬네일생성소스는
http://sir.co.kr/bbs/tb.php/g4_skin_basic/4
이 갤러리 스킨에 사용된 소스 그대로 이거든요....

제 테스트 서버에서는 PHP 5.1.4 를 사용하지만 섬네일 생성문제때문에
 gd 모듈은 PHP 5.1.1 버전의 모듈로 교체하여 사용하고 있습니다.....^^
gd모듈 교체는 어떻게 해요?

호스팅받는데...호스팅사에 요청을 해야하는건가요?

전에 다른 계정으로 설치했을때는 잘 됐는데.....다른 계정으로 옮기니깐 안되네요ㅠㅜ
호스팅이시라면 그들 스스로 문제점을 파악하기전에는 어려울겁니다...
서버의 문제는 여럿이서 사용하기 때문에 어느 한 사이트의 문제만 갖고는 움직일수 없거든요...

섬네일을 사용하지 않는 방법, 또는 거기에 맞는 섬네일 소스를사용하는 방법을 찾으셔야 할겁니다...^^
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT