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

게시판 글쓰기 행추가 기능 질문 채택완료

승승이 2년 전 조회 1,746

어떤 분이 올리신 글을 참고해서

글쓰기 부분에 추가 버튼을 누르면 행이 추가되는 기능을 넣었습니다.

 

write.skin.php

<?php 

            if ($w == "u") {

            $wr_6x = explode("|",substr($write['wr_6'],1));

            }

?></p>

<p><table id="table1" cellspacing="0" cellpadding="0">

            <tr class="sound_only">

                <th>구분</th>

            </tr>

            <?php 

                $wr6_cnt = count($wr_6x);

                    if(!$wr6_cnt){

                    $wr6_cnt = 1;

                    }

                for ($i = 0;  $i < $wr6_cnt; $i++) {

            ?>

            <tr>

                <td>

                    <textarea name="wr_6x[]"><?php echo $wr_6x[$i];?></textarea>

                    <input type="button" value="삭제" class="tabledel_btn" onclick="ob_adRows.delRow(this)"/>

                    <input type="button" value="추가" class="tableadd_btn" onclick="ob_adRows.addRow(this)"/>

                </td>

            </tr>

            <?php } ?>

<table id="dyntbl1" cellspacing="0" cellpadding="0"></table>

<script>

            function adRowsTable(id){

                var table = document.getElementById(id);

                var me = this;

                    if(document.getElementById(id)){

                        var row1 = table.rows[1].outerHTML;

                        function setIds(){

                        var tbl_id = document.querySelectorAll('#'+ id +' .tbl_id');

                        for(var i=0; i<tbl_id.length; i++) tbl_id[i].innerHTML = i+1;

                    }

                    me.addRow = function(btn){

                    btn ? btn.parentNode.parentNode.insertAdjacentHTML('afterend', row1): table.insertAdjacentHTML('beforeend',row1);

                    setIds();

                    }

                    me.delRow = function(btn){

                    btn.parentNode.parentNode.outerHTML ='';

                    setIds();

                    }

                    }

                }

            var ob_adRows = new adRowsTable('table1');

</script>

write_update.skin.php

<?php

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가</p>

<p>for ($i = 0;  $i < count($wr_6x); $i++)

{

    $wr_6 = $wr_6."|".$wr_6x[$i];

}

$sql678 = "update $write_table set

    wr_6  = '$wr_6'                     

    where wr_id = '$wr_id' ";

sql_query($sql678);

?>

입니다. 보기 페이지에 로 불러오고 있는데

|행추가내용|행추가내용|행추가내용|행추가내용 위와 같이 불러와 집니다.

 

추가한 행에 입력한 내용이 위아래로 줄바꿈되게 보이게 하고 싶은데 어느 부분을 수정해야 할까요..

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

답변 2개

채택된 답변
+20 포인트
F
2년 전

write_update.skin.php 부분에서  for ($i = 0;  $i < count($wr_6x); $i++) {     $wr_6 = $wr_6."|".$wr_6x[$i]; }

이 부분을 

if(is_array($wr_6x)) $wr_6=implode("|", $wr_6x);

이렇게 바꾸시고 

출력할때 

echo str_replace("|", " ", $view['wr_6']);

이렇게 하시면 될듯 하네요. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

승승이
2년 전
너무 잘됩니다.
근데..수정을 누르면 첫 행에 작성한 글 앞글자가 �� 이걸로 바뀌어요. ㅠ
이것만 해결하면 될거 같은데..

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

2년 전

혹시 이런걸 원하시는 건지요?

 

                                                       
구분
                                                           
 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

승승이
2년 전
잘안되네요;; 본문 작업대로 했을때 출력되는 부분에...추가된 행 내용들이 줄빠꿈 방식으로 보이게 하고 싶어서요..

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

답변을 작성하려면 로그인이 필요합니다.

로그인