방명록에서 html 사용을 금지 하려면.. 정보
방명록에서 html 사용을 금지 하려면..첨부파일
본문
스킨게시판에 올려져 있는 스킨이나 제가 가지고 있는 스킨이나... 모두
관리자 설정의 html 권한설정,사용금지 태그 설정에 관계없이 html이 적용이 됩니다.
일반 게시판 형식의 스킨은 html 사용을 막을 수 있는데 방명록은 설정에서 막아도 소용이 없습니다.
스킨에서 본문 출력 부분을 xmp로 감싸도 보았는데 스킨이 깨집니다.
방명록 형태의 게시판에서 html사용을 막을 방법은 없는지요.
관리자 설정의 html 권한설정,사용금지 태그 설정에 관계없이 html이 적용이 됩니다.
일반 게시판 형식의 스킨은 html 사용을 막을 수 있는데 방명록은 설정에서 막아도 소용이 없습니다.
스킨에서 본문 출력 부분을 xmp로 감싸도 보았는데 스킨이 깨집니다.
방명록 형태의 게시판에서 html사용을 막을 방법은 없는지요.
댓글 전체

스킨게시판에 올려져 있는 스킨... 모두
관리자 설정의 html 권한설정에 따라 막을 수 있는걸로 알고 있습니다.
사이트라도 알려 주시면 가서 보고 답해 드리기가 쉬울텐데요.
방명록이라 하셨지만 어떤 스킨을 사용하는지도 알려 주시고요.
기타등등..
관리자 설정의 html 권한설정에 따라 막을 수 있는걸로 알고 있습니다.
사이트라도 알려 주시면 가서 보고 답해 드리기가 쉬울텐데요.
방명록이라 하셨지만 어떤 스킨을 사용하는지도 알려 주시고요.
기타등등..
사이트는 없고 컴퓨터에 apm깔아서 테스트 하고 있습니다.
그럼 저만 안되는 건가요??
혹시 php나 mysql 버전과 관련이 있나??
스킨은 '비밀글 방명록' , '아이콘 방명록' 그리고 '까만도둑님','이재필님'의 방명록 등을 받아서
테스트 해보았습니다.
그럼 저만 안되는 건가요??
혹시 php나 mysql 버전과 관련이 있나??
스킨은 '비밀글 방명록' , '아이콘 방명록' 그리고 '까만도둑님','이재필님'의 방명록 등을 받아서
테스트 해보았습니다.
방명록 스킨에
write_update.skin.php에 내용이 들어 있나요?
write_update.skin.php에 내용이 들어 있나요?
네 받아서 테스트 했던 스킨 그리고 제가 수정 하였던 스킨 모두 들어있습니다.
아무레도 저만 안되는 모양이군요.
아무레도 저만 안되는 모양이군요.
이왕이면 소스도 보여 주셨으면.......
write_update.skin.php 이 파일의 소스 말인가요??
소스는
-------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 자신만의 코드를 넣어주세요.
?>
<?
// 자신만의 코드를 넣어주세요.
if ($w == 'u' && $is_admin) {
$sql = " update $write_table set wr_datetime = '$wr_datetime'
where wr_id = '$wr_id' ";
sql_query($sql);
}
?>
-----------------
이거구요 혹시 몰라서 제가 수정하던 스킨도 첨부파일로 올렸습니다.
소스는
-------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 자신만의 코드를 넣어주세요.
?>
<?
// 자신만의 코드를 넣어주세요.
if ($w == 'u' && $is_admin) {
$sql = " update $write_table set wr_datetime = '$wr_datetime'
where wr_id = '$wr_id' ";
sql_query($sql);
}
?>
-----------------
이거구요 혹시 몰라서 제가 수정하던 스킨도 첨부파일로 올렸습니다.
관리자 설정의 html 권한설정,사용금지 태그 설정하면
wr_content에서 모든 태글래 빼고 저정하는데
이상하군요.
일반 테스트만 입력해도 깨진다면
디자인 자체에 태그가 오류가 있는 게 아닐까요?
wr_content에서 모든 태글래 빼고 저정하는데
이상하군요.
일반 테스트만 입력해도 깨진다면
디자인 자체에 태그가 오류가 있는 게 아닐까요?
xmp테그로 감쌌을때 옆으로 길게 늘어나면서 깨진다는 말이었습니다.
물론 xmp는 관리자 설정이 안먹어서 소스가 그대로 출력이 되게 하면 되지
않을까 해서 해 보았던 거구요..
<xmp><?=nl2br(stripslashes($list[$i][wr_content]))?></xmp> 이렇게 무식하게 적용을 했었습니다.
위에처럼 하지 않고 본문 작성을 할때 xmp를 쓰기도 했었구요.(지금 문제는 xmp가 아닌데..--;)
--------------------------------------------------------------------------------------------------
남는 계정에 테스트 페이지를 만들어 보았습니다. 직접 보시길 부탁드립니다.
http://illust.g3.cc/gnuboard4/ (보드 관리자 아이디:asus 비번:1234)
방명록 스킨도 몇게 업로드 되어있습니다.
분명히 a,img 등을 금지 설정 하였는데도 html로 적용이 됩니다.
물론 xmp는 관리자 설정이 안먹어서 소스가 그대로 출력이 되게 하면 되지
않을까 해서 해 보았던 거구요..
<xmp><?=nl2br(stripslashes($list[$i][wr_content]))?></xmp> 이렇게 무식하게 적용을 했었습니다.
위에처럼 하지 않고 본문 작성을 할때 xmp를 쓰기도 했었구요.(지금 문제는 xmp가 아닌데..--;)
--------------------------------------------------------------------------------------------------
남는 계정에 테스트 페이지를 만들어 보았습니다. 직접 보시길 부탁드립니다.
http://illust.g3.cc/gnuboard4/ (보드 관리자 아이디:asus 비번:1234)
방명록 스킨도 몇게 업로드 되어있습니다.
분명히 a,img 등을 금지 설정 하였는데도 html로 적용이 됩니다.
list.skin.php
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>
<link rel="stylesheet" href="<?=$board_skin_path?>/cssx.css">
<script type="text/javascript" src="<?=$board_skin_path?>/js.js"></script>
<div style="margin-top:20px;"></div>
<? if ($member[mb_level] >= $board[bo_write_level]) { ?>
<a href="<?=$write_href?>" class="bbs_w">글을 작성합니다.</a>
<? } ?>
<table cellpadding="0" cellspacing="0" width="90%">
<tr><td style="padding:0 5px 5px 5px;border: #000000 1px dashed;" >
<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="">
<? for ($i=0; $i < count($list); $i++) { ?>
<?
$begin = $end = "";
if (($member[mb_id] && ($member[mb_id] == $write[mb_id])) || $is_admin) {
$a_modify = "<a href='./write.php?w=u&bo_table=$bo_table&wr_id={$list[$i][wr_id]}'>";
$a_delete = "<a href=\"javascript:if (confirm('삭제하시겠습니까?')) {location='./delete.php?w=d&bo_table=$bo_table&wr_id={$list[$i][wr_id]}';}\">";
} else if (!$member[mb_id] && !$list[$i][mb_id]) { // 회원이 쓴 글이 아니라면
$a_modify = "<a href='./password.php?w=u&bo_table=$bo_table&wr_id={$list[$i][wr_id]}'>";
$a_delete = "<a href='./password.php?w=d&bo_table=$bo_table&wr_id={$list[$i][wr_id]}'>";
} else {
$begin = "<!--";
$end = "-->";
}
if ($write[wr_notice] == 0 && ($member[mb_level] >= $board[bo_reply_level])) {
$a_reply = "<a href='./write.php?w=r&&bo_table=$bo_table&wr_id={$list[$i][wr_id]}'>";
} else {
$begin2 = "<!--";
$end2 = "-->";
}
?>
<?
$home_link = "<a href='{$list[$i][wr_homepage]}' target='_blank'>{$list[$i][wr_homepage]}</a>" ;
$home_no = "";
$home_yes_no = ($list[$i][wr_homepage] != "http://");
$home_url = ($home_yes_no ? $home_link : $home_no);
?>
<? if($list[$i][reply]) { ?>
<div style="margin:15px 0 5px 65px;font-size:20px;font-weight: bold;">
<?=$list[$i][name]?> <!--<?=$list[$i][wr_ip]?><?=substr($list[$i][wr_datetime],2,14)?>--><?=date("Y.m.d", strtotime($list[$i][wr_datetime]))?>
<?=$begin?>
<span ONMOUSEOVER="popup('수정','')"; ONMOUSEOUT="kill()"><?=$a_modify?>E</span></a>
<span ONMOUSEOVER="popup('삭제','')"; ONMOUSEOUT="kill()"><?=$a_delete?>D</span></a>
<?=$end?> <span ONMOUSEOVER="popup('홈페이지 링크','')"; ONMOUSEOUT="kill()" ><?=$home_url?></span>
</div>
<table cellpadding="0" cellspacing="0" width="88%" style="margin:0 0 0 65px">
<tr>
<td valign="top" width="65" style="padding-top:5px"><? if($list[$i][wr_1]) { ?><img src="<?=$board_skin_path?>/icon/icon_<?=$list[$i][wr_1]?>.gif" width=60 height=60 border=0><? } ?></td>
<td valign="top" style="text-align: justify;">
<?
echo"html_level: {$board[bo_html_level]}<br>";
echo"user_level: {$member[mb_level]}";
if($member[mb_level] >= $board[bo_html_level])
{$list[$i][wr_content]= nl2br(stripslashes($list[$i][wr_content]));
echo"{$list[$i][wr_content]}";
}
else
{$list[$i][wr_content]= nl2br(strip_tags($list[$i][wr_content]));
echo"{$list[$i][wr_content]}";
}
?>
</xmp>
</td>
</tr>
</table>
<? } else if(!$list[$i][reply]) { ?>
<div style="margin:70px 0 5px 0;font-size:20px;font-weight: bold;">
<?=$list[$i][name]?> <!--<?=$list[$i][wr_ip]?><?=substr($list[$i][wr_datetime],2,14)?>--><?=date("Y.m.d", strtotime($list[$i][wr_datetime]))?>
<?=$begin2?>
<span ONMOUSEOVER="popup('답변','')"; ONMOUSEOUT="kill()"><?=$a_reply?>R</a> </span><?=$end2?>
<?=$begin?>
<span ONMOUSEOVER="popup('수정','')"; ONMOUSEOUT="kill()"><?=$a_modify?>E</a></span>
<span ONMOUSEOVER="popup('삭제','')"; ONMOUSEOUT="kill()"><?=$a_delete?>D</a></span>
<?=$end?> <span ONMOUSEOVER="popup('홈페이지 링크','')"; ONMOUSEOUT="kill()" ><?=$home_url?></span>
</div>
<table cellPadding="0" cellSpacing="0" width="88%" style="margin:0 40px 0 0">
<tr>
<td valign="top" width="65px" style="padding-top:5px">
<? if($list[$i][wr_1]) { ?><img src="<?=$board_skin_path?>/icon/icon_<?=$list[$i][wr_1]?>.gif" width="60" height="60" border="0"><? } ?>
</td>
<td valign="top" style="text-align: justify;">
<?
echo"html_level: {$board[bo_html_level]}<br>";
echo"user_level: {$member[mb_level]}";
if($member[mb_level] >= $board[bo_html_level])
{$list[$i][wr_content]= nl2br(stripslashes($list[$i][wr_content]));
echo"{$list[$i][wr_content]}";
}
else
{$list[$i][wr_content]= nl2br(strip_tags($list[$i][wr_content]));
echo"{$list[$i][wr_content]}";
}
?>
</td>
</tr>
</table>
<? } ?>
<? } ?>
<div align="center" style="margin:70px 0 0 0;font-size:25px;font-weight: bold;">
<? if ($prev_part_href) { echo "<a href='$prev_part_href'><b><<</b></a>"; } ?>
<?
$write_pages = str_replace("처음", "<span ONMOUSEOVER=popup('처음',''); ONMOUSEOUT=kill()>←←</span>", $write_pages);
$write_pages = str_replace("이전", "<span ONMOUSEOVER=popup('이전',''); ONMOUSEOUT=kill()>←</span>", $write_pages);
$write_pages = str_replace("다음", "<span ONMOUSEOVER=popup('다음',''); ONMOUSEOUT=kill()>→</span>", $write_pages);
$write_pages = str_replace("맨끝", "<span ONMOUSEOVER=popup('맨끝',''); ONMOUSEOUT=kill()>→→</span>", $write_pages);
$write_pages = preg_replace("/<span>([0-9]*)<\/span>/", "$1", $write_pages);
$write_pages = preg_replace("/<b>([0-9]*)<\/b>/", "<font style=\"color:#999999;\">$1</font>", $write_pages);
?>
<?=$write_pages?>
<? if ($next_part_href) { echo "<a href='$next_part_href'><b>>></b></a>"; } ?>
</div>
</form>
</td></tr></table>
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>
<link rel="stylesheet" href="<?=$board_skin_path?>/cssx.css">
<script type="text/javascript" src="<?=$board_skin_path?>/js.js"></script>
<div style="margin-top:20px;"></div>
<? if ($member[mb_level] >= $board[bo_write_level]) { ?>
<a href="<?=$write_href?>" class="bbs_w">글을 작성합니다.</a>
<? } ?>
<table cellpadding="0" cellspacing="0" width="90%">
<tr><td style="padding:0 5px 5px 5px;border: #000000 1px dashed;" >
<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="">
<? for ($i=0; $i < count($list); $i++) { ?>
<?
$begin = $end = "";
if (($member[mb_id] && ($member[mb_id] == $write[mb_id])) || $is_admin) {
$a_modify = "<a href='./write.php?w=u&bo_table=$bo_table&wr_id={$list[$i][wr_id]}'>";
$a_delete = "<a href=\"javascript:if (confirm('삭제하시겠습니까?')) {location='./delete.php?w=d&bo_table=$bo_table&wr_id={$list[$i][wr_id]}';}\">";
} else if (!$member[mb_id] && !$list[$i][mb_id]) { // 회원이 쓴 글이 아니라면
$a_modify = "<a href='./password.php?w=u&bo_table=$bo_table&wr_id={$list[$i][wr_id]}'>";
$a_delete = "<a href='./password.php?w=d&bo_table=$bo_table&wr_id={$list[$i][wr_id]}'>";
} else {
$begin = "<!--";
$end = "-->";
}
if ($write[wr_notice] == 0 && ($member[mb_level] >= $board[bo_reply_level])) {
$a_reply = "<a href='./write.php?w=r&&bo_table=$bo_table&wr_id={$list[$i][wr_id]}'>";
} else {
$begin2 = "<!--";
$end2 = "-->";
}
?>
<?
$home_link = "<a href='{$list[$i][wr_homepage]}' target='_blank'>{$list[$i][wr_homepage]}</a>" ;
$home_no = "";
$home_yes_no = ($list[$i][wr_homepage] != "http://");
$home_url = ($home_yes_no ? $home_link : $home_no);
?>
<? if($list[$i][reply]) { ?>
<div style="margin:15px 0 5px 65px;font-size:20px;font-weight: bold;">
<?=$list[$i][name]?> <!--<?=$list[$i][wr_ip]?><?=substr($list[$i][wr_datetime],2,14)?>--><?=date("Y.m.d", strtotime($list[$i][wr_datetime]))?>
<?=$begin?>
<span ONMOUSEOVER="popup('수정','')"; ONMOUSEOUT="kill()"><?=$a_modify?>E</span></a>
<span ONMOUSEOVER="popup('삭제','')"; ONMOUSEOUT="kill()"><?=$a_delete?>D</span></a>
<?=$end?> <span ONMOUSEOVER="popup('홈페이지 링크','')"; ONMOUSEOUT="kill()" ><?=$home_url?></span>
</div>
<table cellpadding="0" cellspacing="0" width="88%" style="margin:0 0 0 65px">
<tr>
<td valign="top" width="65" style="padding-top:5px"><? if($list[$i][wr_1]) { ?><img src="<?=$board_skin_path?>/icon/icon_<?=$list[$i][wr_1]?>.gif" width=60 height=60 border=0><? } ?></td>
<td valign="top" style="text-align: justify;">
<?
echo"html_level: {$board[bo_html_level]}<br>";
echo"user_level: {$member[mb_level]}";
if($member[mb_level] >= $board[bo_html_level])
{$list[$i][wr_content]= nl2br(stripslashes($list[$i][wr_content]));
echo"{$list[$i][wr_content]}";
}
else
{$list[$i][wr_content]= nl2br(strip_tags($list[$i][wr_content]));
echo"{$list[$i][wr_content]}";
}
?>
</xmp>
</td>
</tr>
</table>
<? } else if(!$list[$i][reply]) { ?>
<div style="margin:70px 0 5px 0;font-size:20px;font-weight: bold;">
<?=$list[$i][name]?> <!--<?=$list[$i][wr_ip]?><?=substr($list[$i][wr_datetime],2,14)?>--><?=date("Y.m.d", strtotime($list[$i][wr_datetime]))?>
<?=$begin2?>
<span ONMOUSEOVER="popup('답변','')"; ONMOUSEOUT="kill()"><?=$a_reply?>R</a> </span><?=$end2?>
<?=$begin?>
<span ONMOUSEOVER="popup('수정','')"; ONMOUSEOUT="kill()"><?=$a_modify?>E</a></span>
<span ONMOUSEOVER="popup('삭제','')"; ONMOUSEOUT="kill()"><?=$a_delete?>D</a></span>
<?=$end?> <span ONMOUSEOVER="popup('홈페이지 링크','')"; ONMOUSEOUT="kill()" ><?=$home_url?></span>
</div>
<table cellPadding="0" cellSpacing="0" width="88%" style="margin:0 40px 0 0">
<tr>
<td valign="top" width="65px" style="padding-top:5px">
<? if($list[$i][wr_1]) { ?><img src="<?=$board_skin_path?>/icon/icon_<?=$list[$i][wr_1]?>.gif" width="60" height="60" border="0"><? } ?>
</td>
<td valign="top" style="text-align: justify;">
<?
echo"html_level: {$board[bo_html_level]}<br>";
echo"user_level: {$member[mb_level]}";
if($member[mb_level] >= $board[bo_html_level])
{$list[$i][wr_content]= nl2br(stripslashes($list[$i][wr_content]));
echo"{$list[$i][wr_content]}";
}
else
{$list[$i][wr_content]= nl2br(strip_tags($list[$i][wr_content]));
echo"{$list[$i][wr_content]}";
}
?>
</td>
</tr>
</table>
<? } ?>
<? } ?>
<div align="center" style="margin:70px 0 0 0;font-size:25px;font-weight: bold;">
<? if ($prev_part_href) { echo "<a href='$prev_part_href'><b><<</b></a>"; } ?>
<?
$write_pages = str_replace("처음", "<span ONMOUSEOVER=popup('처음',''); ONMOUSEOUT=kill()>←←</span>", $write_pages);
$write_pages = str_replace("이전", "<span ONMOUSEOVER=popup('이전',''); ONMOUSEOUT=kill()>←</span>", $write_pages);
$write_pages = str_replace("다음", "<span ONMOUSEOVER=popup('다음',''); ONMOUSEOUT=kill()>→</span>", $write_pages);
$write_pages = str_replace("맨끝", "<span ONMOUSEOVER=popup('맨끝',''); ONMOUSEOUT=kill()>→→</span>", $write_pages);
$write_pages = preg_replace("/<span>([0-9]*)<\/span>/", "$1", $write_pages);
$write_pages = preg_replace("/<b>([0-9]*)<\/b>/", "<font style=\"color:#999999;\">$1</font>", $write_pages);
?>
<?=$write_pages?>
<? if ($next_part_href) { echo "<a href='$next_part_href'><b>>></b></a>"; } ?>
</div>
</form>
</td></tr></table>
헉!!! 직접 코드를 짜 주시다니 정말 감사드립니다.
역시 php의 고수는 뭔가 다르군요.. ㅜㅜ
정말 다시한번 감사드립니다..^^
역시 php의 고수는 뭔가 다르군요.. ㅜㅜ
정말 다시한번 감사드립니다..^^