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

일반스킨 자료실의 첨부 다운로드시 코멘트받기 패러디

그동안 보고된 문제점을 패치하여 새로 등록이 되어있으므로 참고 바랍니다.

http://sir.co.kr/bbs/tb.php/g4_tiptech/3373

이게시물은 스크랩 및 여러게시글 등에서 링크가 걸려있는 문제로 당분간 보존 합니다.


++++++++++++++++++++++++++++++++++++++++++++++



첨부파일 다운로드시 코멘트받기(그누보드/일반스킨 자료실의 패러디임)

제목이 이해가 잘안가시는 분들을 위해서 설명부터 들어 갑니다.^^

그누보드/일반스킨 자료실에서 첨부파일을 몰래 살짝꿍 퍼담아 갈려고
첨부링크를 누르면 헉!!!~~~이게모야??
코멘트 부터 작성한후 가져가라? 고 아주 정중하게 멘트가 나옵니다.^^

질문게시판에서 위의 방법이 궁금해 하시는분이 계시길래 나름대로 짜집기를
해봤습니다. 허접하지만 적용해 보실분은 사용후 피드백 부탁 드립니다.


아래의 설명은 제가 직접 적용해본 그대로 설명 하므로 참고하세요.

1,
g4/관리자/게시판관리/게시판별로 이기능을 사용하고자 하는 게시판 설정으로
들어간후 여유필드1 을 사용하였으며 여유필드1에 숫자 1을 넣은후 저장하기
만약 여유필드1 을 이미 사용중이라면 적당한 곳을 사용한후 나중에 설명하는
코드에서 수정해 줍니다.

참고사항:
여유필드는 bo_1 과 wr_1 을 사용하므로 수정하실분은 아래의 설명에서
관련필드를 수정하세요.


****************************

2,
사용하고자 하는 게시판 스킨을 수정합니다.
저는 기본스킨(basic) 을 사용했습니다.
write.skin.php , view.skin.php , view_comment.skin.php 3개 입니다.

****************************

2-1

회원이 자료등록시 다운로드를 하는 회원들에게 코멘트를 받을것인지를 지정하게 합니다.
write.skin.php 의 내용중 아래부분을 찾은후

<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>

<? if ($is_link) { ?>
<? for ($i=1; $i<=$g4[link_count]; $i++) { ?>
<tr>
<td style='padding-left:20px; height:30px;'>· 링크 #<?=$i?></td>
<td><input type='text' class=ed size=50 name='wr_link<?=$i?>' itemname='링크 #<?=$i?>' value='<?=$write["wr_link{$i}"]?>'></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? } ?>

위의 링크입력부분 바로위에
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr> ☜ 이 라인바로위에
아래의 코드를 추가한후 저장

<?
if ($member[mb_id] and $board[bo_1] =="1"){
if ($w == "u"){
if($write[wr_1] ==""){$ranskcheck22 ="(현재: <b>코멘트받지않음</b>)";}
if($write[wr_1] =="1"){$ranskcheck22 ="(현재: <b>코멘트받음</b>)";}
if($write[wr_1] ==""){$ranskcheck1="";}
if($write[wr_1] =="1"){$ranskcheck1="checked";}
}else {
$ranskcheck1="checked";
}
?>
<tr>
<td style='padding-left:20px; height:30px;'>· 코멘트 다운로드</td>
<td><input type=checkbox name=wr_1 value='1' <?=$ranskcheck1?>> 코멘트를 남겨야 다운로드가 가능하게 합니다. <?=$ranskcheck22?></td>
</tr>
<? } ?>


수정안내:
이항목은 수정모드 에서의 값을 참조 하지않은 문제로 인하여
11월 26일 18시 00분에 수정이 되었습니다.


***********************************

2-2

내용보기에서 파일 다운로드 링크클릭시 코멘트가 없을 경우 멘트적용하기
view.skin.php 의 내용중 아래부분을 찾은후

<?
// 가변 파일
$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>&nbsp;&nbsp;<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>";
}
}

// 링크


아래의 코드로 바꾸어 줍니다.


<?
// 가변 파일
if ($member[mb_id]){
$total_commnt = mysql_num_rows(mysql_query(" select * from $write_table where wr_parent = '$wr_id' and mb_id ='$member[mb_id]'"));
}
$cnt = 0;
for ($i=0; $i<count($view[file]); $i++)
{
if ($view[file][$i][source] && !$view[file][$i][view])
{
$cnt++;
if ($board[bo_1] =="1"){
if ($is_admin || $total_commnt > 0){
echo "<tr><td height=22>&nbsp;&nbsp;<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>";
}else {
echo "<tr><td height=22>&nbsp;&nbsp;<img src='{$board_skin_path}/img/icon_file.gif' align=absmiddle> <a href=\"javascript:alert('코멘트를 남기셔야 다운로드가 가능합니다.\n\n잘쓰겠다는 감사의 말씀 부탁드려요. ^^');\" title=''><strong>{$view[file][$i][source]}</strong> ({$view[file][$i][size]}), Down : {$view[file][$i][download]}, {$view[file][$i][datetime]}</a></td></tr>";
}
}else {
echo "<tr><td height=22>&nbsp;&nbsp;<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>";
}
}
}

// 링크


****************************

2-3

첨부파일 다운로드시 코멘트 받기가 작동중일 경우 코멘트 삭제방지하기
이과정은 생략 하셔도 되며 필요하신분만 적용하세요.^^

view_comment.skin.php 의 내용중 아래 부분을 찾은후

<? if ($list[$i][is_del]) { echo "<a href=\"javascript:comment_delete('{$list[$i][del_link]}');\"><img src='$board_skin_path/img/btn_comment_delete.gif' border=0 align=absmiddle></a> "; } ?>

위의 소스라인을 아래처럼 바꾸어 줍니다.

<?
if ($board[bo_1] =="1"){
if (!$is_admin && $view[wr_1] =="1"){
$comment_dels ="<a href=\"javascript:alert('파일 다운로드시 코멘트 작성 기능이 작동 중이므로 작성하신 코멘트를 지울수가 없습니다. ^^');\" title=''>";
}else {
$comment_dels ="<a href=\"javascript:comment_delete('{$list[$i][del_link]}');\">";
}
}else {
$comment_dels ="<a href=\"javascript:comment_delete('{$list[$i][del_link]}');\">";
}
?>
<? if ($list[$i][is_del]) { echo "".$comment_dels."<img src='$board_skin_path/img/btn_comment_delete.gif' border=0 align=absmiddle></a> "; } ?>


다운드시 코멘트받기 패러디 -끝-

댓글 작성

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

로그인하기

댓글 10개

추신:
위의 방법에서 관리자와 게시물 작성자는 코멘트가 없더라도 다운로드가 가능하며
코멘트 삭제일 경우엔 관리자는 모두 삭제가 가능 합니다.
제가 이 질문을 질문/답변 게시판에 올린 사람인데요, 질문/답변 게시판에서도, 팁텍 게시판에서도 제 검색능력이 떨어져서 그런지 도저히 찾을 수 없었습니다. 찾지 못하는 제가 바보죠.

암튼 헐랭이님 진심으로 감사의 말씀 드립니다. ^-^

헐랭이님 덕분에 마음이 아주 가벼워 졌습니다 ^-^
헐랭이님 감사드립니다.
수정안내: 수정항목은 설명중 2-1 이며
글작성시 수정모드 에서의 코멘트 설정값을 참조 하지않은 문제로 인하여
11월 26일 18시 00분에 수정이 되었습니다.
헐랭이님 감사합니다.
저는 bo_1의 값을 bo_10으로 쓰고 나머지는 그대로 적용하였는데 bo_10의 값에 1을 주고, wr_1에 1의 값이 있는데도 그냥 다운로드가 됩니다.
추가되는 코드마다 wr_1 부분을 wr_10 등으로 전부 수정해 주셔야 합니다.
헐랭이님 팁감사드리구연,근데여 이팁을 적용해두여

주소창에 직접 자바명령써서 코멘트 삭제시도하면 삭제되는데영.

그런것까지 막을순 없을까연?^^_^(00)
그동안 보고된 문제점을 패치하여 새로 등록이 되어있으므로 참고 바랍니다.

http://sir.co.kr/bbs/tb.php/g4_tiptech/3373

이게시물은 스크랩 및 여러게시글 등에서 링크가 걸려있는 문제로 당분간 보존 합니다.
감사합니다. ^^

게시글 목록

번호 제목
1625
1618
1601
1581
1580
1534
1524
1513
1483
1482
1477
1469
1465
1459
1453
1442
1441
1436
1425
1421