게시판 글쓰기 > 그누4 질문답변

그누4 질문답변

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

게시판 글쓰기 정보

게시판 글쓰기

본문

안녕하세요

저로서는 도저히 해결불가하여  또 다시 고수님들께 질문 올립니다.

게시판에서 글쓰기 하면 스타일에서 기본으로 바뀌면서

단락을 나눳음에도 글쓰기 완료하면 보여지는 부분에는 단락이 나뉘여 지지 않습니다.

다른 게시판들은 모두 정상적입니다. 유독 회원사진첩 게시판만이 안되네요 ㅜㅜ

어떻게 해야 할지요?

부탁 드리겟습니다.

아래에 혹시나 해서 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;">&nbsp;</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>공지&nbsp;";
    }

    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>&nbsp;";
        }
    }

    if ($is_secret) {
        if ($is_admin || $is_secret==1) {
            $option .= "<input type=checkbox value='secret' name='secret' $secret_checked><span class=w_title>비밀글</span>&nbsp;";
        } else {
            $option_hidden .= "<input type=hidden value='secret' name='secret'>";
        }
    }
   
    if ($is_mail) {
        $option .= "<input type=checkbox value='mail' name='mail' $recv_email_checked>답변메일받기&nbsp;";
    }
}

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' border='0' width=120 height=60 onclick="imageClick();" style="cursor:pointer;" title="글자가 잘안보이는 경우 클릭하시면 새로운 글자가 나옵니다."></td>
    <td><input class='ed' type=input size=10 name=wr_key itemname="자동등록방지" required>&nbsp;&nbsp;왼쪽의 글자를 입력하세요.</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'>&nbsp;
        <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"> var md5_norobot_key = ''; </script>
<script type="text/javascript" src="<?="$g4[path]/js/prototype.js"?>"></script>
<script type="text/javascript">
function imageClick() {
    var url = "<?=$g4[bbs_path]?>/kcaptcha_session.php";
    var para = "";
    var myAjax = new Ajax.Request(
        url,
        {
            method: 'post',
            asynchronous: true,
            parameters: para,
            onComplete: imageClickResult
        });
}

function imageClickResult(req) {
    var result = req.responseText;
    var img = document.createElement("IMG");
    img.setAttribute("src", "<?=$g4[bbs_path]?>/kcaptcha_image.php?t=" + (new Date).getTime());
    document.getElementById('kcaptcha_image').src = img.getAttribute('src');

    md5_norobot_key = result;
}

<? if (!$is_member) { ?>Event.observe(window, "load", imageClick);<? } ?>

<?
// 관리자라면 분류 선택에 '공지' 옵션을 추가함
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)
{
    var s = "";
    if (s = word_filter_check(f.wr_subject.value)) {
        alert("제목에 금지단어('"+s+"')가 포함되어있습니다");
        return false;
    }

    if (s = word_filter_check(f.wr_content.value)) {
        alert("내용에 금지단어('"+s+"')가 포함되어있습니다");
        return false;
    }

    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;
        }
    }

    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;
f.target = "_self";
    <?
    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(); }

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>
  • 복사

댓글 전체

© SIRSOFT
현재 페이지 제일 처음으로