rich 스킨 view.skin.php 파일에서 첨부이미지 이미지 설명글 불러오기 문의 정보
rich 스킨 view.skin.php 파일에서 첨부이미지 이미지 설명글 불러오기 문의
관련링크
본문
rich 스킨 view.skin.php 파일에서 첨부이미지를 불러올때 이미지 설명글도 불러오고 싶습니다.
===================================== view.skin.php 소스 =============================
<span class="lh2"><? echo $view[rich_content]; // 과 같은 코드를 사용할 경우?></span>
=================================================================================
글쓰기에서 과 같이 이미지를 보여주고자 하는곳에 적용을 했는데, 이미지 설명글을 나오게 하려면 어떻게 해야할지 모르겠습니다.
고수님들의 비법 전수를 기다리겠습니다. ^^*
===================================== view.skin.php 소스 =============================
<span class="lh2"><? echo $view[rich_content]; // 과 같은 코드를 사용할 경우?></span>
=================================================================================
글쓰기에서 과 같이 이미지를 보여주고자 하는곳에 적용을 했는데, 이미지 설명글을 나오게 하려면 어떻게 해야할지 모르겠습니다.
고수님들의 비법 전수를 기다리겠습니다. ^^*
댓글 전체
보여 주신 소스가 너무 짧습니다. --;
$view[rich_content]= ????
이런 부분이 필요한데....
이런 부분이 필요한데....
================= view.skin.php =============================
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>
<style type=text/css>
.lh21 { line-height:230%; } /* 내용보기에서 줄간격 */
.lh2 { font-family:굴림,verdana,Gulim; font-size:11pt; color:#000000; letter-spacing:-1px; line-height:180%; }
</style>
<!-- 게시글 보기 시작 -->
<table width="<?=$width?>" align="center" cellpadding="0" cellspacing="0"><tr><td>
<!-- 링크 버튼 -->
<?
ob_start();
?>
<table width='100%' cellpadding=0 cellspacing=0>
<tr height=35>
<td width=75%>
<? if ($search_href) { echo "<a href=\"$search_href\"><img src='$board_skin_path/img/btn_search_list.gif' border='0' align='absmiddle'></a> "; } ?>
<? echo "<a href=\"$list_href\"><img src='$board_skin_path/img/btn_list.gif' border='0' align='absmiddle'></a> "; ?>
<? if ($write_href) { echo "<a href=\"$write_href\"><img src='$board_skin_path/img/btn_write.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($reply_href) { echo "<a href=\"$reply_href\"><img src='$board_skin_path/img/btn_reply.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($update_href) { echo "<a href=\"$update_href\"><img src='$board_skin_path/img/btn_update.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($delete_href) { echo "<a href=\"$delete_href\"><img src='$board_skin_path/img/btn_delete.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($good_href) { echo "<a href=\"$good_href\" target='hiddenframe'><img src='$board_skin_path/img/btn_good.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($nogood_href) { echo "<a href=\"$nogood_href\" target='hiddenframe'><img src='$board_skin_path/img/btn_nogood.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($scrap_href) { echo "<a href=\"javascript:;\" onclick=\"win_scrap('$scrap_href');\"><img src='$board_skin_path/img/btn_scrap.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($copy_href) { echo "<a href=\"$copy_href\"><img src='$board_skin_path/img/btn_copy.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($move_href) { echo "<a href=\"$move_href\"><img src='$board_skin_path/img/btn_move.gif' border='0' align='absmiddle'></a> "; } ?>
</td>
<td width=25% align=right>
<? if ($prev_href) { echo "<a href=\"$prev_href\" title=\"$prev_wr_subject\"><img src='$board_skin_path/img/btn_prev.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($next_href) { echo "<a href=\"$next_href\" title=\"$next_wr_subject\"><img src='$board_skin_path/img/btn_next.gif' border='0' align='absmiddle'></a> "; } ?>
</td>
</tr>
</table>
<?
$link_buttons = ob_get_contents();
ob_end_flush();
?>
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td height=2 bgcolor=#B0ADF5></td></tr>
<tr><td height=30 bgcolor=#F8F8F9 style="padding:5 0 5 0;"> <strong><? if ($is_category) { echo ($category_name ? "[$view[ca_name]] " : ""); } ?><?=$view[subject]?></strong></td></tr>
<tr><td height=30> <font color=#7A8FDB>글쓴이</font> : <?=$view[name]?><? if ($is_ip_view) { echo " ($ip)"; } ?>
<font color=#7A8FDB>날짜</font> : <?=substr($view[wr_datetime],2,14)?>
<font color=#7A8FDB>조회</font> : <?=$view[wr_hit]?>
<? if ($is_good) { ?><font color=#7A8FDB>추천</font> : <?=$view[wr_good]?> <?}?>
<? if ($is_nogood) { ?><font color=#7A8FDB>비추천</font> : <?=$view[wr_nogood]?> <?}?></td></tr>
<tr><td height=1 bgcolor=#E7E7E7></td></tr>
<? if ($trackback_url) { ?>
<tr><td height=30> 트랙백 주소 : <a href="javascript:clipboard_trackback('<?=$trackback_url?>');" style="letter-spacing:0;" title='이 글을 소개할 때는 이 주소를 사용하세요'><?=$trackback_url?></a>
<script language="JavaScript">
function clipboard_trackback(str)
{
if (g4_is_gecko)
prompt("이 글의 고유주소입니다. Ctrl+C를 눌러 복사하세요.", str);
else if (g4_is_ie) {
window.clipboardData.setData("Text", str);
alert("트랙백 주소가 복사되었습니다.\n\n<?=$trackback_url?>");
}
}
</script></td></tr>
<?}?>
<?
// 가변 파일
$cnt = 0;
for ($i=0; $i<count($view[file]); $i++)
{
if ($view[file][$i][source] && !$view[file][$i][view])
{
$cnt++;
//echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_file.gif' align=absmiddle> <a href='{$view[file][$i][href]}' title='{$view[file][$i][content]}'><strong>{$view[file][$i][source]}</strong> ({$view[file][$i][size]}), Down : {$view[file][$i][download]}, {$view[file][$i][datetime]}</a></td></tr>";
echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_file.gif' align=absmiddle> <a href=\"javascript:file_download('{$view[file][$i][href]}', '{$view[file][$i][source]}');\" title='{$view[file][$i][content]}'><strong>{$view[file][$i][source]}</strong> ({$view[file][$i][size]}), Down : {$view[file][$i][download]}, {$view[file][$i][datetime]}</a></td></tr>";
}
}
// 링크
$cnt = 0;
for ($i=1; $i<=$g4[link_count]; $i++)
{
if ($view[link][$i])
{
$cnt++;
$link = cut_str($view[link][$i], 70);
echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_link.gif' align=absmiddle> <a href='{$view[link_href][$i]}' target=_blank><strong>{$link}</strong> ({$view[link_hit][$i]})</a></td></tr>";
}
}
?>
<tr><td height=1 bgcolor=#E7E7E7></td></tr>
<tr>
<td height="150" style='word-break:break-all; padding:10px; border:1px solid #BBBBBB;' bgcolor=#F8F8F9>
<!--<span class="ct lh"><?=$view[content];?></span>-->
<span class="lh2"><? echo $view[rich_content]; // {이미지:0} 과 같은 코드를 사용할 경우?></span>
<!-- 테러 태그 방지용 --></xml></xmp><a href=""></a><a href=''></a>
<? if ($is_signature) { echo "<br>$signature<br><br>"; } // 서명 출력 ?></td>
</tr>
</table><br>
<?
include_once("./view_comment.php");
?>
<?=$link_buttons?>
</td></tr></table><br>
<script language="JavaScript">
// HTML 로 넘어온 <img ... > 태그의 폭이 테이블폭보다 크다면 테이블폭을 적용한다.
function resize_image()
{
var target = document.getElementsByName('target_resize_image[]');
var image_width = parseInt('<?=$board[bo_image_width]?>');
var image_height = 0;
for(i=0; i<target.length; i++)
{
// 원래 사이즈를 저장해 놓는다
target[i].tmp_width = target[i].width;
target[i].tmp_height = target[i].height;
// 이미지 폭이 테이블 폭보다 크다면 테이블폭에 맞춘다
if(target[i].width > image_width)
{
image_height = parseFloat(target[i].width / target[i].height)
target[i].width = image_width;
target[i].height = parseInt(image_width / image_height);
// 스타일에 적용된 이미지의 폭과 높이를 삭제한다
target[i].style.width = '';
target[i].style.height = '';
}
target[i].style.borderWidth = '1px';
target[i].style.borderStyle = 'solid';
target[i].style.borderColor = '#000000';
}
}
window.onload = resize_image;
function file_download(link, file)
{
<? if ($board[bo_download_point] < 0) { ?>if (confirm("'"+file+"' 파일을 다운로드 하시면 포인트가 차감(<?=number_format($board[bo_download_point])?>점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?"))<?}?>
document.location.href = link;
}
</script>
<!-- 게시글 보기 끝 -->
===========================================================================
위 링크에 적용된 소스 그대로 입니다.
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>
<style type=text/css>
.lh21 { line-height:230%; } /* 내용보기에서 줄간격 */
.lh2 { font-family:굴림,verdana,Gulim; font-size:11pt; color:#000000; letter-spacing:-1px; line-height:180%; }
</style>
<!-- 게시글 보기 시작 -->
<table width="<?=$width?>" align="center" cellpadding="0" cellspacing="0"><tr><td>
<!-- 링크 버튼 -->
<?
ob_start();
?>
<table width='100%' cellpadding=0 cellspacing=0>
<tr height=35>
<td width=75%>
<? if ($search_href) { echo "<a href=\"$search_href\"><img src='$board_skin_path/img/btn_search_list.gif' border='0' align='absmiddle'></a> "; } ?>
<? echo "<a href=\"$list_href\"><img src='$board_skin_path/img/btn_list.gif' border='0' align='absmiddle'></a> "; ?>
<? if ($write_href) { echo "<a href=\"$write_href\"><img src='$board_skin_path/img/btn_write.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($reply_href) { echo "<a href=\"$reply_href\"><img src='$board_skin_path/img/btn_reply.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($update_href) { echo "<a href=\"$update_href\"><img src='$board_skin_path/img/btn_update.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($delete_href) { echo "<a href=\"$delete_href\"><img src='$board_skin_path/img/btn_delete.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($good_href) { echo "<a href=\"$good_href\" target='hiddenframe'><img src='$board_skin_path/img/btn_good.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($nogood_href) { echo "<a href=\"$nogood_href\" target='hiddenframe'><img src='$board_skin_path/img/btn_nogood.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($scrap_href) { echo "<a href=\"javascript:;\" onclick=\"win_scrap('$scrap_href');\"><img src='$board_skin_path/img/btn_scrap.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($copy_href) { echo "<a href=\"$copy_href\"><img src='$board_skin_path/img/btn_copy.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($move_href) { echo "<a href=\"$move_href\"><img src='$board_skin_path/img/btn_move.gif' border='0' align='absmiddle'></a> "; } ?>
</td>
<td width=25% align=right>
<? if ($prev_href) { echo "<a href=\"$prev_href\" title=\"$prev_wr_subject\"><img src='$board_skin_path/img/btn_prev.gif' border='0' align='absmiddle'></a> "; } ?>
<? if ($next_href) { echo "<a href=\"$next_href\" title=\"$next_wr_subject\"><img src='$board_skin_path/img/btn_next.gif' border='0' align='absmiddle'></a> "; } ?>
</td>
</tr>
</table>
<?
$link_buttons = ob_get_contents();
ob_end_flush();
?>
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td height=2 bgcolor=#B0ADF5></td></tr>
<tr><td height=30 bgcolor=#F8F8F9 style="padding:5 0 5 0;"> <strong><? if ($is_category) { echo ($category_name ? "[$view[ca_name]] " : ""); } ?><?=$view[subject]?></strong></td></tr>
<tr><td height=30> <font color=#7A8FDB>글쓴이</font> : <?=$view[name]?><? if ($is_ip_view) { echo " ($ip)"; } ?>
<font color=#7A8FDB>날짜</font> : <?=substr($view[wr_datetime],2,14)?>
<font color=#7A8FDB>조회</font> : <?=$view[wr_hit]?>
<? if ($is_good) { ?><font color=#7A8FDB>추천</font> : <?=$view[wr_good]?> <?}?>
<? if ($is_nogood) { ?><font color=#7A8FDB>비추천</font> : <?=$view[wr_nogood]?> <?}?></td></tr>
<tr><td height=1 bgcolor=#E7E7E7></td></tr>
<? if ($trackback_url) { ?>
<tr><td height=30> 트랙백 주소 : <a href="javascript:clipboard_trackback('<?=$trackback_url?>');" style="letter-spacing:0;" title='이 글을 소개할 때는 이 주소를 사용하세요'><?=$trackback_url?></a>
<script language="JavaScript">
function clipboard_trackback(str)
{
if (g4_is_gecko)
prompt("이 글의 고유주소입니다. Ctrl+C를 눌러 복사하세요.", str);
else if (g4_is_ie) {
window.clipboardData.setData("Text", str);
alert("트랙백 주소가 복사되었습니다.\n\n<?=$trackback_url?>");
}
}
</script></td></tr>
<?}?>
<?
// 가변 파일
$cnt = 0;
for ($i=0; $i<count($view[file]); $i++)
{
if ($view[file][$i][source] && !$view[file][$i][view])
{
$cnt++;
//echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_file.gif' align=absmiddle> <a href='{$view[file][$i][href]}' title='{$view[file][$i][content]}'><strong>{$view[file][$i][source]}</strong> ({$view[file][$i][size]}), Down : {$view[file][$i][download]}, {$view[file][$i][datetime]}</a></td></tr>";
echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_file.gif' align=absmiddle> <a href=\"javascript:file_download('{$view[file][$i][href]}', '{$view[file][$i][source]}');\" title='{$view[file][$i][content]}'><strong>{$view[file][$i][source]}</strong> ({$view[file][$i][size]}), Down : {$view[file][$i][download]}, {$view[file][$i][datetime]}</a></td></tr>";
}
}
// 링크
$cnt = 0;
for ($i=1; $i<=$g4[link_count]; $i++)
{
if ($view[link][$i])
{
$cnt++;
$link = cut_str($view[link][$i], 70);
echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_link.gif' align=absmiddle> <a href='{$view[link_href][$i]}' target=_blank><strong>{$link}</strong> ({$view[link_hit][$i]})</a></td></tr>";
}
}
?>
<tr><td height=1 bgcolor=#E7E7E7></td></tr>
<tr>
<td height="150" style='word-break:break-all; padding:10px; border:1px solid #BBBBBB;' bgcolor=#F8F8F9>
<!--<span class="ct lh"><?=$view[content];?></span>-->
<span class="lh2"><? echo $view[rich_content]; // {이미지:0} 과 같은 코드를 사용할 경우?></span>
<!-- 테러 태그 방지용 --></xml></xmp><a href=""></a><a href=''></a>
<? if ($is_signature) { echo "<br>$signature<br><br>"; } // 서명 출력 ?></td>
</tr>
</table><br>
<?
include_once("./view_comment.php");
?>
<?=$link_buttons?>
</td></tr></table><br>
<script language="JavaScript">
// HTML 로 넘어온 <img ... > 태그의 폭이 테이블폭보다 크다면 테이블폭을 적용한다.
function resize_image()
{
var target = document.getElementsByName('target_resize_image[]');
var image_width = parseInt('<?=$board[bo_image_width]?>');
var image_height = 0;
for(i=0; i<target.length; i++)
{
// 원래 사이즈를 저장해 놓는다
target[i].tmp_width = target[i].width;
target[i].tmp_height = target[i].height;
// 이미지 폭이 테이블 폭보다 크다면 테이블폭에 맞춘다
if(target[i].width > image_width)
{
image_height = parseFloat(target[i].width / target[i].height)
target[i].width = image_width;
target[i].height = parseInt(image_width / image_height);
// 스타일에 적용된 이미지의 폭과 높이를 삭제한다
target[i].style.width = '';
target[i].style.height = '';
}
target[i].style.borderWidth = '1px';
target[i].style.borderStyle = 'solid';
target[i].style.borderColor = '#000000';
}
}
window.onload = resize_image;
function file_download(link, file)
{
<? if ($board[bo_download_point] < 0) { ?>if (confirm("'"+file+"' 파일을 다운로드 하시면 포인트가 차감(<?=number_format($board[bo_download_point])?>점)됩니다.\n\n포인트는 게시물당 한번만 차감되며 다음에 다시 다운로드 하셔도 중복하여 차감하지 않습니다.\n\n그래도 다운로드 하시겠습니까?"))<?}?>
document.location.href = link;
}
</script>
<!-- 게시글 보기 끝 -->
===========================================================================
위 링크에 적용된 소스 그대로 입니다.
맨 위에 코드를 이렇게 한번 해보세요
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$view[rich_content] = preg_replace("/{설명\:([0-9]+)[:]?([^}]*)}/ie", "view_image(\$view, '\\1', '\\2')", $view[rich_content]);
?>
그리고 본문에는 {설명:0} 과 같은 식으로 넣으시면 될 것 같습니다.^^
자.. 제게 포인트를 ㅡㅢ;;
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$view[rich_content] = preg_replace("/{설명\:([0-9]+)[:]?([^}]*)}/ie", "view_image(\$view, '\\1', '\\2')", $view[rich_content]);
?>
그리고 본문에는 {설명:0} 과 같은 식으로 넣으시면 될 것 같습니다.^^
자.. 제게 포인트를 ㅡㅢ;;
안됩니다. ㅠ.ㅠ.
급하게 올리다보니^^;; 아래 코드는 잘 작동 할껍니다. 방금 테스트해봤거든요!!
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$view[rich_content] = preg_replace("/{설명\:([0-9]+)[:]?([^}]*)}/ie", "\$view[file][\\1][content]", $view[rich_content]);
?>
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$view[rich_content] = preg_replace("/{설명\:([0-9]+)[:]?([^}]*)}/ie", "\$view[file][\\1][content]", $view[rich_content]);
?>
방금 했는데 안됩니다.
테스트를 해보셨으면 잘 되어야 하는데........
거참 이상하군요.
테스트를 해보셨으면 잘 되어야 하는데........
거참 이상하군요.
도둑님.. 되잖아용.. ㅠㅠ
http://hyusig.net/v2/bbs/board.php?bo_table=test_1&wr_id=25
http://hyusig.net/v2/bbs/board.php?bo_table=test_1&wr_id=25
ㅋㅋㅋ
제가 사용법을 몰랐습니다.
근데 문제가 있습니다. 제가 원했던거 일반 스킨처럼 이미지 아래 바로 설명글이 붙도록 하고 싶거든요. 그건 어떻게 안되겠습니까? ㅎㅎ
제가 사용법을 몰랐습니다.
근데 문제가 있습니다. 제가 원했던거 일반 스킨처럼 이미지 아래 바로 설명글이 붙도록 하고 싶거든요. 그건 어떻게 안되겠습니까? ㅎㅎ
도둑님!! 성공한거 같아요^^ 이걸로 적용한번 해보세요!!
사용법은 {이미지:0 float:left} {이미지:0 float:right} 이런식입니다.
기존에는 align 같은 태그 속성이 들어갔었는데 변경후에는 스타일쉬트 를 써줘야 한다는 거에요.
확인해보시고 답변 부탁드립니다!!
-------------------------------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$view[rich_content] = preg_replace("/{이미지\:([0-9]+)[:]?([^}]*)}/ie", "view_image2(\$view, '\\1', '\\2')", $view[content]);
function view_image2($view, $number, $attribute)
{
if ($view['file'][$number]['view'])
return preg_replace("/(\<img )([^\>]*)(\>)/i", "<div style='$attribute;text-align:center'>\\1 \\2 \\3<br>".$view['file'][$number]['content']."</div>", $view['file'][$number]['view']);
else
//return "{".$number."번 이미지 없음}";
return "";
}
?>
--------------------------
사용법은 {이미지:0 float:left} {이미지:0 float:right} 이런식입니다.
기존에는 align 같은 태그 속성이 들어갔었는데 변경후에는 스타일쉬트 를 써줘야 한다는 거에요.
확인해보시고 답변 부탁드립니다!!
-------------------------------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$view[rich_content] = preg_replace("/{이미지\:([0-9]+)[:]?([^}]*)}/ie", "view_image2(\$view, '\\1', '\\2')", $view[content]);
function view_image2($view, $number, $attribute)
{
if ($view['file'][$number]['view'])
return preg_replace("/(\<img )([^\>]*)(\>)/i", "<div style='$attribute;text-align:center'>\\1 \\2 \\3<br>".$view['file'][$number]['content']."</div>", $view['file'][$number]['view']);
else
//return "{".$number."번 이미지 없음}";
return "";
}
?>
--------------------------
감사합니다. 완벽하게 해결되었습니다.