도와주세요..ㅠ_ㅠ 정말 안됩니다.. 정보
도와주세요..ㅠ_ㅠ 정말 안됩니다..관련링크
본문
게시판에 글을 작성하면 아무런 반응이 없습니다;;
손된것도 없습니다.. 등록된글들은 이미 다른 게시판스킨을 이용해서 등록했던 글입니다..
Rinix님의 갤러리 게시판을 이용해서 섬네일을 출력할려고 하면 안되네요;;
혹 뭐가 문제인지 아시는분.. 도와주세요 ㅠ_ㅠ
어제글을 남겼는데 답변을 감사하게 한분께서 달아주셨는데 그래도 수정이 안되어 이렇게
또 글을 올립니다..부탁드리겠습니다 ㅠ-ㅠ
손된것도 없습니다.. 등록된글들은 이미 다른 게시판스킨을 이용해서 등록했던 글입니다..
Rinix님의 갤러리 게시판을 이용해서 섬네일을 출력할려고 하면 안되네요;;
혹 뭐가 문제인지 아시는분.. 도와주세요 ㅠ_ㅠ
어제글을 남겼는데 답변을 감사하게 한분께서 달아주셨는데 그래도 수정이 안되어 이렇게
또 글을 올립니다..부탁드리겠습니다 ㅠ-ㅠ
댓글 전체
우선 그누보드 최신버전에서
/skin/board/basic/ajax.filter.php 파일을 사용스킨 폴더에 업로드합니다. --- 필수
write.skin.php 파일 수정해서 아래 첨부합니다.
2개 같이 올려야합니다.
write.skin.php
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
if ($is_dhtml_editor) {
include_once("$g4[path]/lib/cheditor4.lib.php");
echo "<script src='$g4[cheditor4_path]/cheditor.js'></script>";
echo cheditor1('wr_content', '100%', '250');
}
$mask="mask_l";
?>
<style type="text/css">
<!--
.write_head { height:30px; text-align:center; color:#8492A0; }
.field { border:1px solid #ccc; }
.asdf {
position: relative;
}
-->
</style>
<SCRIPT language=javascript>
<!--
clicked = false;
var st_sc = 0;
var pleft = "";
var ptop = "";
var dragxcoor = "";
var dragycoor = "";
var newx = 0;
var newy = 0;
function startDrag(cx,cy) {
// 움직임 제어 처음클릭에 움직이고 두번째 클릭에 멈춤
if(clicked == false){
clicked = true;
document.getElementById("tb_bu").style.cursor = "move";
document.getElementById("tb_bu").alt = "한번더 클릭하면 위치가 고정되요.";
}else{
clicked = false;
document.getElementById("tb_bu").style.cursor = "hand";
document.getElementById("tb_bu").alt = "클릭하면 마우스를 따라 다녀요.";
if(document.getElementById("tbnum").value){
f_num = document.getElementById("tbnum").value;
document.getElementById("loc_x["+f_num+"]").value = document.getElementById("mask").style.left.replace("px", "");
document.getElementById("loc_y["+f_num+"]").value = document.getElementById("mask").style.top.replace("px", "");
}
}
//레이어 초기값
pleft=parseInt(document.getElementById("mask").style.left);
ptop=parseInt(document.getElementById("mask").style.top);
//마우스 초기값
dragxcoor=cx;
dragycoor=cy;
//스크롤바 초기값저장
st_sc = parseInt(document.body.scrollTop);
}
function dragBox(evt) {
//약어지정
e = evt || event;
//섬네일 이미지 크기확인
t_X = document.getElementById("thumbnail").style.width;
t_X = t_X.replace("px", "");
t_Y = document.getElementById("thumbnail").style.height;
t_Y = t_Y.replace("px", "");
//마스크 크기확인
m_X = document.getElementById("mask").style.width;
m_X = m_X.replace("px", "");
m_Y = document.getElementById("mask").style.height;
m_Y = m_Y.replace("px", "");
// 마스크 이동 최대 영역
max_X = t_X - m_X;
max_Y = t_Y - m_Y;
// 마스크이동영역을 제어 하기 위해 한번더 저장
move_x = max_X;
move_y = max_Y;
//스크롤바 가 생길경우를 대비
no_sc = parseInt(document.body.scrollTop);
//현재 스크롤바 위치에서 초기 스크롤바 값을 빼서 레이어 위치값을 보정함.
tb_sc = no_sc - st_sc;
if (clicked == true) {
//레이어 x, y 위치값
newx = pleft+e.clientX-dragxcoor;
newy = ptop+e.clientY-dragycoor+tb_sc;
//레이어가 영역안에서만 움직일수 있도록 제어
if(move_x > 0) document.getElementById("mask").style.left=newx;
if(move_y > 0) document.getElementById("mask").style.top=newy;
// return false;
}
if(max_X > 0){
if(parseInt(document.getElementById("mask").style.left) < 0) {
move_x = 0;
document.getElementById("mask").style.left = 0;
}
if(parseInt(document.getElementById("mask").style.left) > max_X) {
move_x = 0;
document.getElementById("mask").style.left = max_X;
}
}
if(max_Y > 0){
if(parseInt(document.getElementById("mask").style.top) < 0) {
move_y = 0;
document.getElementById("mask").style.top = 0;
}
if(parseInt(document.getElementById("mask").style.top) > max_Y) {
move_y = 0;
document.getElementById("mask").style.top = max_Y;
}
}
}
document.onmousemove = dragBox;
//-->
</SCRIPT>
<div style="height:14px; line-height:1px; font-size:1px;"> </div>
<script language="javascript">
// 글자수 제한
var char_min = parseInt(<?=$write_min?>); // 최소
var char_max = parseInt(<?=$write_max?>); // 최대
</script>
<form name="fwrite" method="post" onsubmit="return fwrite_submit(this);" enctype="multipart/form-data" style="margin:0px;">
<input type=hidden name=null>
<input type=hidden name=w value="<?=$w?>">
<input type=hidden name=bo_table value="<?=$bo_table?>">
<input type=hidden name=wr_id value="<?=$wr_id?>">
<input type=hidden name=sca value="<?=$sca?>">
<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=sst value="<?=$sst?>">
<input type=hidden name=sod value="<?=$sod?>">
<input type=hidden name=page value="<?=$page?>">
<input type=hidden name=tbnum >
<input type=hidden name=tbx value="<?=$board[bo_1]?>">
<input type=hidden name=tby value="<?=$board[bo_2]?>">
<input type=hidden name=tbpath value="<?=$board_skin_path?>">
<table width="<?=$width?>" align=center cellpadding=0 cellspacing=0><tr><td>
<div style="border:1px solid #ddd; height:34px; background:url(<?=$board_skin_path?>/img/title_bg.gif) repeat-x;">
<div style="font-weight:bold; font-size:14px; margin:7px 0 0 10px;">:: <?=$title_msg?> ::</div>
</div>
<div style="height:3px; background:url(<?=$board_skin_path?>/img/title_shadow.gif) repeat-x; line-height:1px; font-size:1px;"></div>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<colgroup width=90>
<colgroup width=''>
<tr><td colspan="2" style="background:url(<?=$board_skin_path?>/img/title_bg.gif) repeat-x; height:3px;"></td></tr>
<? if ($is_name) { ?>
<tr>
<td class=write_head>이 름</td>
<td><input class='field' maxlength=20 size=15 name=wr_name itemname="이름" required value="<?=$name?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_password) { ?>
<tr>
<td class=write_head>패스워드</td>
<td><input class='field' type=password maxlength=20 size=15 name=wr_password itemname="패스워드" <?=$password_required?>></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_email) { ?>
<tr>
<td class=write_head>이메일</td>
<td><input class='field' maxlength=100 size=50 name=wr_email email itemname="이메일" value="<?=$email?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_homepage) { ?>
<tr>
<td class=write_head>홈페이지</td>
<td><input class='field' size=50 name=wr_homepage itemname="홈페이지" value="<?=$homepage?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<?
$option = "";
$option_hidden = "";
if ($is_notice || $is_html || $is_secret || $is_mail) {
$option = "";
if ($is_notice) {
$option .= "<input type=checkbox name=notice value='1' $notice_checked>공지 ";
}
if ($is_html) {
if ($is_dhtml_editor) {
$option_hidden .= "<input type=hidden value='html1' name='html'>";
} else {
$option .= "<input onclick='html_auto_br(this);' type=checkbox value='$html_value' name='html' $html_checked><span class=w_title>html</span> ";
}
}
if ($is_secret) {
if ($is_admin || $is_secret==1) {
$option .= "<input type=checkbox value='secret' name='secret' $secret_checked><span class=w_title>비밀글</span> ";
} else {
$option_hidden .= "<input type=hidden value='secret' name='secret'>";
}
}
if ($is_mail) {
$option .= "<input type=checkbox value='mail' name='mail' $recv_email_checked>답변메일받기 ";
}
}
echo $option_hidden;
if ($option) {
?>
<tr>
<td class=write_head>옵 션</td>
<td><?=$option?></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_category) { ?>
<tr>
<td class=write_head>분 류</td>
<td><select name=ca_name required itemname="분류"><option value="">선택하세요<?=$category_option?></select></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<tr>
<td class=write_head>제 목</td>
<td><input class='field' style="width:100%;" name=wr_subject id="wr_subject" itemname="제목" required value="<?=$subject?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<tr>
<td class=write_head style='padding-left:20px;'>내용</td>
<td style='padding:5 0 5 0;'>
<? if ($is_dhtml_editor) { ?>
<?=cheditor2('wr_content', $content);?>
<? } else { ?>
<table width=100% cellpadding=0 cellspacing=0>
<tr>
<td width=50% align=left valign=bottom>
<span style="cursor: pointer;" onclick="textarea_decrease('wr_content', 10);"><img src="<?=$board_skin_path?>/img/up.gif"></span>
<span style="cursor: pointer;" onclick="textarea_original('wr_content', 10);"><img src="<?=$board_skin_path?>/img/start.gif"></span>
<span style="cursor: pointer;" onclick="textarea_increase('wr_content', 10);"><img src="<?=$board_skin_path?>/img/down.gif"></span></td>
<td width=50% align=right><? if ($write_min || $write_max) { ?><span id=char_count></span>글자<?}?></td>
</tr>
</table>
<textarea id="wr_content" name="wr_content" class=tx style='width:100%; word-break:break-all;' rows=10 itemname="내용" required
<? if ($write_min || $write_max) { ?>onkeyup="check_byte('wr_content', 'char_count');"<?}?>><?=$content?></textarea>
<? if ($write_min || $write_max) { ?><script language="javascript"> check_byte('wr_content', 'char_count'); </script><?}?>
<? } ?> </td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#dddddd></td></tr>
<? if ($is_link) { ?>
<? for ($i=1; $i<=$g4[link_count]; $i++) { ?>
<tr>
<td class=write_head>링크 #<?=$i?></td>
<td><input type='text' class='field' 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>
<? } ?>
<? } ?>
<? if ($is_file) { ?>
<tr><td colspan=2 align="center" valign="middle" style="padding:5 5 5 5; "><table border="0" cellpadding="1" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td valign="top" bgcolor="#FFFFFF"><div id="thumbnail" style="height: 200; width: 200; background-image: url(<?=$board_skin_path?>/img/rinix.png); background-repeat: no-repeat; background-position: center center;"><div id="mask" style="border: 1px solid #FF0000; position:relative; width:<?=$board[bo_1]?>; height:<?=$board[bo_2]?>; left:0; top:0; display:table;"><img src="<?=$board_skin_path?>/img/bu.png" alt="클릭하면 마우스를 따라 다녀요." name="tb_bu" width="<?=$board[bo_1]?>" height="<?=$board[bo_2]?>" id="tb_bu" style="cursor:hand" onclick="startDrag(event.clientX, event.clientY)"/></div>
</div></td>
</tr>
</table><iframe width="0" height="0" name="load_thumbnail" frameborder="0"></iframe></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<tr>
<td class=write_head>
<table cellpadding=0 cellspacing=0>
<tr>
<td class=write_head style="padding-top:10px; line-height:20px;">
파일첨부<br>
<span onclick="add_file();" style="cursor:pointer;"><img src="<?=$board_skin_path?>/img/btn_file_add.gif"></span>
<span onclick="del_file();" style="cursor:pointer;"><img src="<?=$board_skin_path?>/img/btn_file_minus.gif"></span> </td>
</tr>
</table> </td>
<td style='padding:5 0 5 0;'>
<table id="variableFiles" cellpadding=0 cellspacing=0>
</table>
<?// print_r2($file); ?>
<script language="JavaScript">
var flen = 0;
function add_file(delete_code)
{
var upload_count = <?=(int)$board[bo_upload_count]?>;
if (upload_count && flen >= upload_count)
{
alert("이 게시판은 "+upload_count+"개 까지만 파일 업로드가 가능합니다.");
return;
}
var objTbl;
var objRow;
var objCell;
if (document.getElementById)
objTbl = document.getElementById("variableFiles");
else
objTbl = document.all["variableFiles"];
objRow = objTbl.insertRow(objTbl.rows.length);
objCell = objRow.insertCell(0);
objCell.innerHTML = "<input type='file' class='field' name='bf_file["+flen+"]' onchange='re_set("+flen+")' title='파일 용량 <?=$upload_max_filesize?> 이하만 업로드 가능'> <div id='div_bu["+flen+"]' style='display:inline; position: relative;'><input onclick='add_thumbnail(" + flen + ");' type='button' name='but["+flen+"]' class='field' value='섬네일' style='width:53; height:19' /></div>";
objCell.innerHTML += "<input type='hidden' name='loc_x["+flen+"]'><input type='hidden' name='loc_y["+flen+"]'><input type='hidden' name='tb_name["+flen+"]'>";
objCell.innerHTML += "<input type='hidden' name='ma_width["+flen+"]'><input type='hidden' name='ma_height["+flen+"]'>";
objCell.innerHTML += "<input type='hidden' name='tb_width["+flen+"]'><input type='hidden' name='tb_height["+flen+"]'>";
objCell.innerHTML += "<input type='hidden' name='dell_file["+flen+"]'>";
if (delete_code)
objCell.innerHTML += delete_code;
else
{
<? if ($is_file_content) { ?>
objCell.innerHTML += "<br><input type='text' class='field' size=50 name='bf_content[]' title='업로드 이미지 파일에 해당 되는 내용을 입력하세요.'>";
<? } ?>
;
}
flen++;
}
<?=$file_script; //수정시에 필요한 스크립트?>
<?
if($file){
for($i=0; $i<$file[count]; $i++){
?>
document.getElementById("dell_file["+<?=$i?>+"]").value = "<?=$file[$i][file]?>";
<?
}
}
?>
function del_file()
{
// file_length 이하로는 필드가 삭제되지 않아야 합니다.
var file_length = <?=(int)$file_length?>;
var objTbl = document.getElementById("variableFiles");
if (objTbl.rows.length - 1 > file_length)
{
objTbl.deleteRow(objTbl.rows.length - 1);
flen--;
}
}
</script>
</td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_trackback) { ?>
<tr>
<td class=write_head>트랙백주소</td>
<td><input class='field' size=50 name=wr_trackback itemname="트랙백" value="<?=$trackback?>">
<? if ($w=="u") { ?><input type=checkbox name="re_trackback" value="1">핑 보냄<? } ?></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_guest) { ?>
<tr>
<td class=write_head><img id='kcaptcha_image' /></td>
<td><input class='ed' type=input size=10 name=wr_key itemname="자동등록방지" required> 왼쪽의 글자를 입력하세요.</td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" align="center" valign="top" style="padding-top:30px;">
<input type=image id="btn_submit" src="<?=$board_skin_path?>/img/btn_write.gif" border=0 accesskey='s'>
<a href="./board.php?bo_table=<?=$bo_table?>"><img id="btn_list" src="<?=$board_skin_path?>/img/btn_list.gif" border=0></a></td>
</tr>
</table>
</td></tr></table>
</form>
<script type="text/javascript" src="<?="$g4[path]/js/jquery.kcaptcha.js"?>"></script>
<script type="text/javascript">
<?
// 관리자라면 분류 선택에 '공지' 옵션을 추가함
if ($is_admin)
{
echo "
if (typeof(document.fwrite.ca_name) != 'undefined')
{
document.fwrite.ca_name.options.length += 1;
document.fwrite.ca_name.options[document.fwrite.ca_name.options.length-1].value = '공지';
document.fwrite.ca_name.options[document.fwrite.ca_name.options.length-1].text = '공지';
}";
}
?>
with (document.fwrite)
{
if (typeof(wr_name) != "undefined")
wr_name.focus();
else if (typeof(wr_subject) != "undefined")
wr_subject.focus();
else if (typeof(wr_content) != "undefined")
wr_content.focus();
if (typeof(ca_name) != "undefined")
if (w.value == "u")
ca_name.value = "<?=$write[ca_name]?>";
}
function html_auto_br(obj)
{
if (obj.checked) {
result = confirm("자동 줄바꿈을 하시겠습니까?\n\n자동 줄바꿈은 게시물 내용중 줄바뀐 곳을<br>태그로 변환하는 기능입니다.");
if (result)
obj.value = "html2";
else
obj.value = "html1";
}
else
obj.value = "";
}
function fwrite_submit(f)
{
if (document.getElementById('char_count')) {
if (char_min > 0 || char_max > 0) {
var cnt = parseInt(document.getElementById('char_count').innerHTML);
if (char_min > 0 && char_min > cnt) {
alert("내용은 "+char_min+"글자 이상 쓰셔야 합니다.");
return false;
}
else if (char_max > 0 && char_max < cnt) {
alert("내용은 "+char_max+"글자 이하로 쓰셔야 합니다.");
return false;
}
}
}
<?
if ($is_dhtml_editor) echo cheditor3('wr_content');
?>
if (document.getElementById('tx_wr_content')) {
if (!ed_wr_content.outputBodyText()) {
alert('내용을 입력하십시오.');
ed_wr_content.returnFalse();
return false;
}
}
var subject = "";
var content = "";
$.ajax({
url: "<?=$board_skin_path?>/ajax.filter.php",
type: "POST",
data: {
"subject": f.wr_subject.value,
"content": f.wr_content.value
},
dataType: "json",
async: false,
cache: false,
success: function(data, textStatus) {
subject = data.subject;
content = data.content;
}
});
if (subject) {
alert("제목에 금지단어('"+subject+"')가 포함되어있습니다");
f.wr_subject.focus();
return false;
}
if (content) {
alert("내용에 금지단어('"+content+"')가 포함되어있습니다");
if (typeof(ed_wr_content) != "undefined")
ed_wr_content.returnFalse();
else
f.wr_content.focus();
return false;
}
if (typeof(f.wr_key) != 'undefined') {
if (hex_md5(f.wr_key.value) != md5_norobot_key) {
alert('자동등록방지용 글자가 제대로 입력되지 않았습니다.');
f.wr_key.select();
f.wr_key.focus();
return false;
}
}
document.getElementById('btn_submit').disabled = true;
document.getElementById('btn_list').disabled = true;
<?
if ($g4[https_url])
echo "f.action = '$g4[https_url]/$g4[bbs]/write_update.php';";
else
echo "f.action = './write_update.php';";
?>
return true;
}
</script>
<script language="JavaScript" src="<?="$g4[path]/js/board.js"?>"></script>
<script language="JavaScript"> window.onload=function() { drawFont(); } </script>
<script language="JavaScript">
function typcheck(inp)
{
var lastidx = -1;
lastidx = inp.lastIndexOf('.');
var extension = inp.substring(lastidx+1, inp.length);
if((lastidx != -1) && (extension.toLowerCase() == "jpg")){
return true;
}else if((lastidx != -1) && (extension.toLowerCase() == "png")){
return true;
}else if((lastidx != -1) && (extension.toLowerCase() == "gif")){
return true;
}else{
return false;
}
}
function add_thumbnail(nt)
{
var f = document.fwrite;
var file = f['bf_file['+nt+']'];
var img_t = file.value;
f.tbnum.value = nt;
if(!typcheck(img_t)){
document.getElementById("div_bu["+nt+"]").style.display = "none";
//alert("jpg, gif, png 파일만 섬네일 생성이 가능합니다.");
return true;
}else{
document.getElementById("div_bu["+nt+"]").style.display = "inline";
}
if(document.getElementById("tb_name["+nt+"]").value){
document.getElementById("thumbnail").style.width = document.getElementById("tb_width["+nt+"]").value;
document.getElementById("thumbnail").style.height = document.getElementById("tb_height["+nt+"]").value;
document.getElementById("thumbnail").style.background = "url('../data/rinix/"+document.getElementById("tb_name["+nt+"]").value+"')";
document.getElementById("mask").style.left = document.getElementById("loc_x["+nt+"]").value;
document.getElementById("mask").style.top = document.getElementById("loc_y["+nt+"]").value;
document.getElementById("mask").style.width = document.getElementById("ma_width["+nt+"]").value;
document.getElementById("mask").style.height = document.getElementById("ma_height["+nt+"]").value;
document.getElementById("tb_bu").style.width = document.getElementById("ma_width["+nt+"]").value;
document.getElementById("tb_bu").style.height = document.getElementById("ma_height["+nt+"]").value;
}else{
if(img_t){
f.target = "load_thumbnail";
f.action = "<?=$board_skin_path?>/thumbnail_upload.php";
f.submit();
}else{
alert("먼저 이미지를 선택해주세요");
}
}
}
function re_set(nt){
dell_ck = document.getElementById("bf_file_del["+nt+"]");
if(dell_ck) dell_ck.checked = true;
document.getElementById("tb_name["+nt+"]").value = "";
document.getElementById("tb_width["+nt+"]").value = "";
document.getElementById("tb_height["+nt+"]").value = "";
document.getElementById("loc_x["+nt+"]").value = "";
document.getElementById("loc_y["+nt+"]").value = "";
document.getElementById("ma_width["+nt+"]").value = "";
document.getElementById("ma_height["+nt+"]").value = "";
add_thumbnail(nt);
}
</script>
/skin/board/basic/ajax.filter.php 파일을 사용스킨 폴더에 업로드합니다. --- 필수
write.skin.php 파일 수정해서 아래 첨부합니다.
2개 같이 올려야합니다.
write.skin.php
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
if ($is_dhtml_editor) {
include_once("$g4[path]/lib/cheditor4.lib.php");
echo "<script src='$g4[cheditor4_path]/cheditor.js'></script>";
echo cheditor1('wr_content', '100%', '250');
}
$mask="mask_l";
?>
<style type="text/css">
<!--
.write_head { height:30px; text-align:center; color:#8492A0; }
.field { border:1px solid #ccc; }
.asdf {
position: relative;
}
-->
</style>
<SCRIPT language=javascript>
<!--
clicked = false;
var st_sc = 0;
var pleft = "";
var ptop = "";
var dragxcoor = "";
var dragycoor = "";
var newx = 0;
var newy = 0;
function startDrag(cx,cy) {
// 움직임 제어 처음클릭에 움직이고 두번째 클릭에 멈춤
if(clicked == false){
clicked = true;
document.getElementById("tb_bu").style.cursor = "move";
document.getElementById("tb_bu").alt = "한번더 클릭하면 위치가 고정되요.";
}else{
clicked = false;
document.getElementById("tb_bu").style.cursor = "hand";
document.getElementById("tb_bu").alt = "클릭하면 마우스를 따라 다녀요.";
if(document.getElementById("tbnum").value){
f_num = document.getElementById("tbnum").value;
document.getElementById("loc_x["+f_num+"]").value = document.getElementById("mask").style.left.replace("px", "");
document.getElementById("loc_y["+f_num+"]").value = document.getElementById("mask").style.top.replace("px", "");
}
}
//레이어 초기값
pleft=parseInt(document.getElementById("mask").style.left);
ptop=parseInt(document.getElementById("mask").style.top);
//마우스 초기값
dragxcoor=cx;
dragycoor=cy;
//스크롤바 초기값저장
st_sc = parseInt(document.body.scrollTop);
}
function dragBox(evt) {
//약어지정
e = evt || event;
//섬네일 이미지 크기확인
t_X = document.getElementById("thumbnail").style.width;
t_X = t_X.replace("px", "");
t_Y = document.getElementById("thumbnail").style.height;
t_Y = t_Y.replace("px", "");
//마스크 크기확인
m_X = document.getElementById("mask").style.width;
m_X = m_X.replace("px", "");
m_Y = document.getElementById("mask").style.height;
m_Y = m_Y.replace("px", "");
// 마스크 이동 최대 영역
max_X = t_X - m_X;
max_Y = t_Y - m_Y;
// 마스크이동영역을 제어 하기 위해 한번더 저장
move_x = max_X;
move_y = max_Y;
//스크롤바 가 생길경우를 대비
no_sc = parseInt(document.body.scrollTop);
//현재 스크롤바 위치에서 초기 스크롤바 값을 빼서 레이어 위치값을 보정함.
tb_sc = no_sc - st_sc;
if (clicked == true) {
//레이어 x, y 위치값
newx = pleft+e.clientX-dragxcoor;
newy = ptop+e.clientY-dragycoor+tb_sc;
//레이어가 영역안에서만 움직일수 있도록 제어
if(move_x > 0) document.getElementById("mask").style.left=newx;
if(move_y > 0) document.getElementById("mask").style.top=newy;
// return false;
}
if(max_X > 0){
if(parseInt(document.getElementById("mask").style.left) < 0) {
move_x = 0;
document.getElementById("mask").style.left = 0;
}
if(parseInt(document.getElementById("mask").style.left) > max_X) {
move_x = 0;
document.getElementById("mask").style.left = max_X;
}
}
if(max_Y > 0){
if(parseInt(document.getElementById("mask").style.top) < 0) {
move_y = 0;
document.getElementById("mask").style.top = 0;
}
if(parseInt(document.getElementById("mask").style.top) > max_Y) {
move_y = 0;
document.getElementById("mask").style.top = max_Y;
}
}
}
document.onmousemove = dragBox;
//-->
</SCRIPT>
<div style="height:14px; line-height:1px; font-size:1px;"> </div>
<script language="javascript">
// 글자수 제한
var char_min = parseInt(<?=$write_min?>); // 최소
var char_max = parseInt(<?=$write_max?>); // 최대
</script>
<form name="fwrite" method="post" onsubmit="return fwrite_submit(this);" enctype="multipart/form-data" style="margin:0px;">
<input type=hidden name=null>
<input type=hidden name=w value="<?=$w?>">
<input type=hidden name=bo_table value="<?=$bo_table?>">
<input type=hidden name=wr_id value="<?=$wr_id?>">
<input type=hidden name=sca value="<?=$sca?>">
<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=sst value="<?=$sst?>">
<input type=hidden name=sod value="<?=$sod?>">
<input type=hidden name=page value="<?=$page?>">
<input type=hidden name=tbnum >
<input type=hidden name=tbx value="<?=$board[bo_1]?>">
<input type=hidden name=tby value="<?=$board[bo_2]?>">
<input type=hidden name=tbpath value="<?=$board_skin_path?>">
<table width="<?=$width?>" align=center cellpadding=0 cellspacing=0><tr><td>
<div style="border:1px solid #ddd; height:34px; background:url(<?=$board_skin_path?>/img/title_bg.gif) repeat-x;">
<div style="font-weight:bold; font-size:14px; margin:7px 0 0 10px;">:: <?=$title_msg?> ::</div>
</div>
<div style="height:3px; background:url(<?=$board_skin_path?>/img/title_shadow.gif) repeat-x; line-height:1px; font-size:1px;"></div>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<colgroup width=90>
<colgroup width=''>
<tr><td colspan="2" style="background:url(<?=$board_skin_path?>/img/title_bg.gif) repeat-x; height:3px;"></td></tr>
<? if ($is_name) { ?>
<tr>
<td class=write_head>이 름</td>
<td><input class='field' maxlength=20 size=15 name=wr_name itemname="이름" required value="<?=$name?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_password) { ?>
<tr>
<td class=write_head>패스워드</td>
<td><input class='field' type=password maxlength=20 size=15 name=wr_password itemname="패스워드" <?=$password_required?>></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_email) { ?>
<tr>
<td class=write_head>이메일</td>
<td><input class='field' maxlength=100 size=50 name=wr_email email itemname="이메일" value="<?=$email?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_homepage) { ?>
<tr>
<td class=write_head>홈페이지</td>
<td><input class='field' size=50 name=wr_homepage itemname="홈페이지" value="<?=$homepage?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<?
$option = "";
$option_hidden = "";
if ($is_notice || $is_html || $is_secret || $is_mail) {
$option = "";
if ($is_notice) {
$option .= "<input type=checkbox name=notice value='1' $notice_checked>공지 ";
}
if ($is_html) {
if ($is_dhtml_editor) {
$option_hidden .= "<input type=hidden value='html1' name='html'>";
} else {
$option .= "<input onclick='html_auto_br(this);' type=checkbox value='$html_value' name='html' $html_checked><span class=w_title>html</span> ";
}
}
if ($is_secret) {
if ($is_admin || $is_secret==1) {
$option .= "<input type=checkbox value='secret' name='secret' $secret_checked><span class=w_title>비밀글</span> ";
} else {
$option_hidden .= "<input type=hidden value='secret' name='secret'>";
}
}
if ($is_mail) {
$option .= "<input type=checkbox value='mail' name='mail' $recv_email_checked>답변메일받기 ";
}
}
echo $option_hidden;
if ($option) {
?>
<tr>
<td class=write_head>옵 션</td>
<td><?=$option?></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_category) { ?>
<tr>
<td class=write_head>분 류</td>
<td><select name=ca_name required itemname="분류"><option value="">선택하세요<?=$category_option?></select></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<tr>
<td class=write_head>제 목</td>
<td><input class='field' style="width:100%;" name=wr_subject id="wr_subject" itemname="제목" required value="<?=$subject?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<tr>
<td class=write_head style='padding-left:20px;'>내용</td>
<td style='padding:5 0 5 0;'>
<? if ($is_dhtml_editor) { ?>
<?=cheditor2('wr_content', $content);?>
<? } else { ?>
<table width=100% cellpadding=0 cellspacing=0>
<tr>
<td width=50% align=left valign=bottom>
<span style="cursor: pointer;" onclick="textarea_decrease('wr_content', 10);"><img src="<?=$board_skin_path?>/img/up.gif"></span>
<span style="cursor: pointer;" onclick="textarea_original('wr_content', 10);"><img src="<?=$board_skin_path?>/img/start.gif"></span>
<span style="cursor: pointer;" onclick="textarea_increase('wr_content', 10);"><img src="<?=$board_skin_path?>/img/down.gif"></span></td>
<td width=50% align=right><? if ($write_min || $write_max) { ?><span id=char_count></span>글자<?}?></td>
</tr>
</table>
<textarea id="wr_content" name="wr_content" class=tx style='width:100%; word-break:break-all;' rows=10 itemname="내용" required
<? if ($write_min || $write_max) { ?>onkeyup="check_byte('wr_content', 'char_count');"<?}?>><?=$content?></textarea>
<? if ($write_min || $write_max) { ?><script language="javascript"> check_byte('wr_content', 'char_count'); </script><?}?>
<? } ?> </td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#dddddd></td></tr>
<? if ($is_link) { ?>
<? for ($i=1; $i<=$g4[link_count]; $i++) { ?>
<tr>
<td class=write_head>링크 #<?=$i?></td>
<td><input type='text' class='field' 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>
<? } ?>
<? } ?>
<? if ($is_file) { ?>
<tr><td colspan=2 align="center" valign="middle" style="padding:5 5 5 5; "><table border="0" cellpadding="1" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td valign="top" bgcolor="#FFFFFF"><div id="thumbnail" style="height: 200; width: 200; background-image: url(<?=$board_skin_path?>/img/rinix.png); background-repeat: no-repeat; background-position: center center;"><div id="mask" style="border: 1px solid #FF0000; position:relative; width:<?=$board[bo_1]?>; height:<?=$board[bo_2]?>; left:0; top:0; display:table;"><img src="<?=$board_skin_path?>/img/bu.png" alt="클릭하면 마우스를 따라 다녀요." name="tb_bu" width="<?=$board[bo_1]?>" height="<?=$board[bo_2]?>" id="tb_bu" style="cursor:hand" onclick="startDrag(event.clientX, event.clientY)"/></div>
</div></td>
</tr>
</table><iframe width="0" height="0" name="load_thumbnail" frameborder="0"></iframe></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<tr>
<td class=write_head>
<table cellpadding=0 cellspacing=0>
<tr>
<td class=write_head style="padding-top:10px; line-height:20px;">
파일첨부<br>
<span onclick="add_file();" style="cursor:pointer;"><img src="<?=$board_skin_path?>/img/btn_file_add.gif"></span>
<span onclick="del_file();" style="cursor:pointer;"><img src="<?=$board_skin_path?>/img/btn_file_minus.gif"></span> </td>
</tr>
</table> </td>
<td style='padding:5 0 5 0;'>
<table id="variableFiles" cellpadding=0 cellspacing=0>
</table>
<?// print_r2($file); ?>
<script language="JavaScript">
var flen = 0;
function add_file(delete_code)
{
var upload_count = <?=(int)$board[bo_upload_count]?>;
if (upload_count && flen >= upload_count)
{
alert("이 게시판은 "+upload_count+"개 까지만 파일 업로드가 가능합니다.");
return;
}
var objTbl;
var objRow;
var objCell;
if (document.getElementById)
objTbl = document.getElementById("variableFiles");
else
objTbl = document.all["variableFiles"];
objRow = objTbl.insertRow(objTbl.rows.length);
objCell = objRow.insertCell(0);
objCell.innerHTML = "<input type='file' class='field' name='bf_file["+flen+"]' onchange='re_set("+flen+")' title='파일 용량 <?=$upload_max_filesize?> 이하만 업로드 가능'> <div id='div_bu["+flen+"]' style='display:inline; position: relative;'><input onclick='add_thumbnail(" + flen + ");' type='button' name='but["+flen+"]' class='field' value='섬네일' style='width:53; height:19' /></div>";
objCell.innerHTML += "<input type='hidden' name='loc_x["+flen+"]'><input type='hidden' name='loc_y["+flen+"]'><input type='hidden' name='tb_name["+flen+"]'>";
objCell.innerHTML += "<input type='hidden' name='ma_width["+flen+"]'><input type='hidden' name='ma_height["+flen+"]'>";
objCell.innerHTML += "<input type='hidden' name='tb_width["+flen+"]'><input type='hidden' name='tb_height["+flen+"]'>";
objCell.innerHTML += "<input type='hidden' name='dell_file["+flen+"]'>";
if (delete_code)
objCell.innerHTML += delete_code;
else
{
<? if ($is_file_content) { ?>
objCell.innerHTML += "<br><input type='text' class='field' size=50 name='bf_content[]' title='업로드 이미지 파일에 해당 되는 내용을 입력하세요.'>";
<? } ?>
;
}
flen++;
}
<?=$file_script; //수정시에 필요한 스크립트?>
<?
if($file){
for($i=0; $i<$file[count]; $i++){
?>
document.getElementById("dell_file["+<?=$i?>+"]").value = "<?=$file[$i][file]?>";
<?
}
}
?>
function del_file()
{
// file_length 이하로는 필드가 삭제되지 않아야 합니다.
var file_length = <?=(int)$file_length?>;
var objTbl = document.getElementById("variableFiles");
if (objTbl.rows.length - 1 > file_length)
{
objTbl.deleteRow(objTbl.rows.length - 1);
flen--;
}
}
</script>
</td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_trackback) { ?>
<tr>
<td class=write_head>트랙백주소</td>
<td><input class='field' size=50 name=wr_trackback itemname="트랙백" value="<?=$trackback?>">
<? if ($w=="u") { ?><input type=checkbox name="re_trackback" value="1">핑 보냄<? } ?></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_guest) { ?>
<tr>
<td class=write_head><img id='kcaptcha_image' /></td>
<td><input class='ed' type=input size=10 name=wr_key itemname="자동등록방지" required> 왼쪽의 글자를 입력하세요.</td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" align="center" valign="top" style="padding-top:30px;">
<input type=image id="btn_submit" src="<?=$board_skin_path?>/img/btn_write.gif" border=0 accesskey='s'>
<a href="./board.php?bo_table=<?=$bo_table?>"><img id="btn_list" src="<?=$board_skin_path?>/img/btn_list.gif" border=0></a></td>
</tr>
</table>
</td></tr></table>
</form>
<script type="text/javascript" src="<?="$g4[path]/js/jquery.kcaptcha.js"?>"></script>
<script type="text/javascript">
<?
// 관리자라면 분류 선택에 '공지' 옵션을 추가함
if ($is_admin)
{
echo "
if (typeof(document.fwrite.ca_name) != 'undefined')
{
document.fwrite.ca_name.options.length += 1;
document.fwrite.ca_name.options[document.fwrite.ca_name.options.length-1].value = '공지';
document.fwrite.ca_name.options[document.fwrite.ca_name.options.length-1].text = '공지';
}";
}
?>
with (document.fwrite)
{
if (typeof(wr_name) != "undefined")
wr_name.focus();
else if (typeof(wr_subject) != "undefined")
wr_subject.focus();
else if (typeof(wr_content) != "undefined")
wr_content.focus();
if (typeof(ca_name) != "undefined")
if (w.value == "u")
ca_name.value = "<?=$write[ca_name]?>";
}
function html_auto_br(obj)
{
if (obj.checked) {
result = confirm("자동 줄바꿈을 하시겠습니까?\n\n자동 줄바꿈은 게시물 내용중 줄바뀐 곳을<br>태그로 변환하는 기능입니다.");
if (result)
obj.value = "html2";
else
obj.value = "html1";
}
else
obj.value = "";
}
function fwrite_submit(f)
{
if (document.getElementById('char_count')) {
if (char_min > 0 || char_max > 0) {
var cnt = parseInt(document.getElementById('char_count').innerHTML);
if (char_min > 0 && char_min > cnt) {
alert("내용은 "+char_min+"글자 이상 쓰셔야 합니다.");
return false;
}
else if (char_max > 0 && char_max < cnt) {
alert("내용은 "+char_max+"글자 이하로 쓰셔야 합니다.");
return false;
}
}
}
<?
if ($is_dhtml_editor) echo cheditor3('wr_content');
?>
if (document.getElementById('tx_wr_content')) {
if (!ed_wr_content.outputBodyText()) {
alert('내용을 입력하십시오.');
ed_wr_content.returnFalse();
return false;
}
}
var subject = "";
var content = "";
$.ajax({
url: "<?=$board_skin_path?>/ajax.filter.php",
type: "POST",
data: {
"subject": f.wr_subject.value,
"content": f.wr_content.value
},
dataType: "json",
async: false,
cache: false,
success: function(data, textStatus) {
subject = data.subject;
content = data.content;
}
});
if (subject) {
alert("제목에 금지단어('"+subject+"')가 포함되어있습니다");
f.wr_subject.focus();
return false;
}
if (content) {
alert("내용에 금지단어('"+content+"')가 포함되어있습니다");
if (typeof(ed_wr_content) != "undefined")
ed_wr_content.returnFalse();
else
f.wr_content.focus();
return false;
}
if (typeof(f.wr_key) != 'undefined') {
if (hex_md5(f.wr_key.value) != md5_norobot_key) {
alert('자동등록방지용 글자가 제대로 입력되지 않았습니다.');
f.wr_key.select();
f.wr_key.focus();
return false;
}
}
document.getElementById('btn_submit').disabled = true;
document.getElementById('btn_list').disabled = true;
<?
if ($g4[https_url])
echo "f.action = '$g4[https_url]/$g4[bbs]/write_update.php';";
else
echo "f.action = './write_update.php';";
?>
return true;
}
</script>
<script language="JavaScript" src="<?="$g4[path]/js/board.js"?>"></script>
<script language="JavaScript"> window.onload=function() { drawFont(); } </script>
<script language="JavaScript">
function typcheck(inp)
{
var lastidx = -1;
lastidx = inp.lastIndexOf('.');
var extension = inp.substring(lastidx+1, inp.length);
if((lastidx != -1) && (extension.toLowerCase() == "jpg")){
return true;
}else if((lastidx != -1) && (extension.toLowerCase() == "png")){
return true;
}else if((lastidx != -1) && (extension.toLowerCase() == "gif")){
return true;
}else{
return false;
}
}
function add_thumbnail(nt)
{
var f = document.fwrite;
var file = f['bf_file['+nt+']'];
var img_t = file.value;
f.tbnum.value = nt;
if(!typcheck(img_t)){
document.getElementById("div_bu["+nt+"]").style.display = "none";
//alert("jpg, gif, png 파일만 섬네일 생성이 가능합니다.");
return true;
}else{
document.getElementById("div_bu["+nt+"]").style.display = "inline";
}
if(document.getElementById("tb_name["+nt+"]").value){
document.getElementById("thumbnail").style.width = document.getElementById("tb_width["+nt+"]").value;
document.getElementById("thumbnail").style.height = document.getElementById("tb_height["+nt+"]").value;
document.getElementById("thumbnail").style.background = "url('../data/rinix/"+document.getElementById("tb_name["+nt+"]").value+"')";
document.getElementById("mask").style.left = document.getElementById("loc_x["+nt+"]").value;
document.getElementById("mask").style.top = document.getElementById("loc_y["+nt+"]").value;
document.getElementById("mask").style.width = document.getElementById("ma_width["+nt+"]").value;
document.getElementById("mask").style.height = document.getElementById("ma_height["+nt+"]").value;
document.getElementById("tb_bu").style.width = document.getElementById("ma_width["+nt+"]").value;
document.getElementById("tb_bu").style.height = document.getElementById("ma_height["+nt+"]").value;
}else{
if(img_t){
f.target = "load_thumbnail";
f.action = "<?=$board_skin_path?>/thumbnail_upload.php";
f.submit();
}else{
alert("먼저 이미지를 선택해주세요");
}
}
}
function re_set(nt){
dell_ck = document.getElementById("bf_file_del["+nt+"]");
if(dell_ck) dell_ck.checked = true;
document.getElementById("tb_name["+nt+"]").value = "";
document.getElementById("tb_width["+nt+"]").value = "";
document.getElementById("tb_height["+nt+"]").value = "";
document.getElementById("loc_x["+nt+"]").value = "";
document.getElementById("loc_y["+nt+"]").value = "";
document.getElementById("ma_width["+nt+"]").value = "";
document.getElementById("ma_height["+nt+"]").value = "";
add_thumbnail(nt);
}
</script>
정말 감사드립니다. 글쓰기에서 파일이 정상적으로 업로드가 되었습니다.
그런데 글쓰기 버튼을 클릭후 아무런 반응이 없습니다.
그런데 글을 올라가져있습니다..알려주신 방법으로 최신버전 8월 23일 다운받아 설치했는데
글쓰기 버튼을 클릭하면 클릭이 안됩니다..단 위에 말씀드린것 처럼 글쓰기는 정상적으로 되었습니다.목록에 파일이 나옵니다.
하지만 테스트로 글을 남겨보시면 아시겠지만 "글쓰기" 클릭시 업로드 완료후 반응이 없고
글쓰기 버튼은 클릭이 안되는 문제가 발생합니다..
정말 답변 감사드립니다. 죄송하지만 이 문제또한 해결방안을 제시해 주시면 정말 감사드리겟습니다.
그런데 글쓰기 버튼을 클릭후 아무런 반응이 없습니다.
그런데 글을 올라가져있습니다..알려주신 방법으로 최신버전 8월 23일 다운받아 설치했는데
글쓰기 버튼을 클릭하면 클릭이 안됩니다..단 위에 말씀드린것 처럼 글쓰기는 정상적으로 되었습니다.목록에 파일이 나옵니다.
하지만 테스트로 글을 남겨보시면 아시겠지만 "글쓰기" 클릭시 업로드 완료후 반응이 없고
글쓰기 버튼은 클릭이 안되는 문제가 발생합니다..
정말 답변 감사드립니다. 죄송하지만 이 문제또한 해결방안을 제시해 주시면 정말 감사드리겟습니다.
쓰기로 넘어가면 오류가 뜹니다.(수정 이전에도 떴었는데..)
그 오류를 찾아보세요.. 1군데..
살펴봤는데
현재 스킨상의 오류는 아닌듯합니다.
그 오류를 찾아보세요.. 1군데..
살펴봤는데
현재 스킨상의 오류는 아닌듯합니다.
그누보드 최신버젼에 옛 스킨을 사용하신다면 위와 같은 오류가 발생하던데요... ㅠㅠ
쓰기에서 문제가 생기면 제 생각에 스킨상에서 오류가 생기는건 분명합니다.
최신버젼의 글쓰기 스킨과 사용하시려는 스킨를 잘 비교해보세요.
쓰기에서 문제가 생기면 제 생각에 스킨상에서 오류가 생기는건 분명합니다.
최신버젼의 글쓰기 스킨과 사용하시려는 스킨를 잘 비교해보세요.