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

wr_content 내용 저장 방법 채택완료

승슝 4년 전 조회 2,175

고수님들 안녕하세요ㅠㅠㅠ

제가 지금 wr_content 안에 표 형식으로 값을 입력받아서 DB안의 wr_content안에는 그 내용들이 한줄로 입력될 수 있도록 하고 싶은데 어떻게 하면 좋을까요?

배열을 사용해서 저장해도 괜찮을 것 같나요?

</p>

<p><div id="wr_content" class="wr_content <?php echo $is_dhtml_editor ? $config['cf_editor'] : ''; ?>" placeholder="특이사항"></p>

<p>                <table>    </p>

<p>                    <tr></p>

<p>                        <td><input type="text"></td></p>

<p>                        <td><input type="text"></td></p>

<p>                    </tr></p>

<p>                    <tr></p>

<p>                        <td><input type="text"></td></p>

<p>                        <td><input type="text"></td></p>

<p>                    </tr></p>

<p>                </table></p>

<p>            </div></p>

<p>

 

대충 틀은 이렇게 잡고 시작하려고 하고 table 안에 들어가는 것들은 자바스크립트로 버튼 클릭시 늘어나게 하려고 합니다!!

append("<td></td>")

이런 방식으로요 그럼 이 상황에서는 배열의 이름을 어떻게 지정할 수 있을까요?ㅠㅠ

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

답변 2개

채택된 답변
+20 포인트
cuwaaang
4년 전

이름은 아무렇게나 동일하게만하셈 name = "content[]" 이런식으로 배열로 해주고

쿼리문날릴떄 implode로 한줄로 만들어주고

다시 뽑을때는 explode로 뽑아서 나눠서 넣고 

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

답변에 대한 댓글 2개

승슝
4년 전
넴 감사합니다 지금 바로 해볼게요 그런데 그럼 고수님 말씀은
name = "content[ ]"이렇게만 쓰면 된다는 건가요? content[0] 이런식으로 안에 숫자를 넣을 필요가 없나요?
그리도 궁금한게 배열을 사용하면 write.skin.php에서 업데이트로 저는
$wr_2 = $content[0] $content[1] 이런식으로 했는데
그럼 바로 $wr_2 = $content[ ] 이렇게 작성하면 되는 건가욤???
승슝
4년 전
아예 name을 고수님이 말한 것처럼 하고 값을 받아서 write_update.skin.php에서 배열을 wr_content에 sql문으로 넣으니깐 되었습니다!!ㅎㅎㅎㅎ감사해용

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

4년 전

저가 지금까지 진행한게 

</p>

<p>        function addFeedName(e){</p>

<p>            let feedId = $(e).data('name');</p>

<p>            console.log(feedId);</p>

<p>            e.style.visibility = 'hidden';</p>

<p>            let feedIdRandom = document.getElementById(feedId).getAttribute('value');</p>

<p>            console.log(feedIdRandom);</p>

<p>            $("#feed_type_box").append("<div>"+feedIdRandom+"</div>");</p>

<p>            $("#feed_type_box").append("<div><input type='text' name='wr_content' class='frm_input'> </div>");</p>

<p>            $("#feed_type_box").append("<div><input type='text' name='wr_content' class='frm_input'></div>");</p>

<p>            $("#feed_type_box").append("<div><input type='text' name='wr_content' class='frm_input'></div>");</p>

<p>            $("#feed_type_box").append("<div><input type='text' name='wr_content' class='frm_input'></div>");</p>

<p>        }</p>

<p>

이 함수를 만들어 클릭시마다 feed_type_box 의 아이디를 가진 곳에 <input>태그를 넣으려고 하는 거구 input태그의 값들이 배열로 들어와 저장될 수 있도록 하려고 합니다.

여기에서 원래 name="wr_content[]"로 했었는데 값이 아예 저장되지 않았고 그 다음에 name="wr_content"로 진행하니 값은 저장이 되는데 한개의 값만 저장이 됩니다.

 

</p>

<p>$wr_content = explode(" ", $write['wr_content']);</p>

<p>

이렇게 설정을 해서 값을 가져와서 배열형태로 저장해줄 수 있도록 했구요

 

write_update.skin.php 파일을 만들어

</p>

<p><?php</p>

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

<p> </p>

<p>$wr_content = "$wr_content";</p>

<p> </p>

<p>$sql = " update $write_table</p>

<p>            set  wr_content = '$wr_content'</p>

<p>          where wr_id = '$wr_id' ";</p>

<p>sql_query($sql);</p>

<p>?></p>

<p>

이렇게 코드를 구성했습니다!!

혹시 몰라서 

<input type="hidden" name="wr_content" value="멍멍이 사료">

새로운 인풋을 만들지 않고 이렇게 앞에 적어주고 하면 다시 값은 저장이 잘 되는데

여기에서 클릭버튼으로 눌러서 인풋에 값을 입력하고 배열로 저장하려고 하면 다시 값이 저장되지 않습니다.(내용을 입력하세요라고 떠요!!)

이 때의 코드들은 조금 수정해서 했는데요

write.skin.php

</p>

<p><?php</p>

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

<p> </p>

<p>$wr_content = explode(" ", $write['wr_content']);</p>

<p> </p>

<p>// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨</p>

<p>add_stylesheet('<link rel="stylesheet" href="'.$board_skin_url.'/style.css">', 0);</p>

<p>?></p>

<p><script></p>

<p>$(document).ready(function() {</p>

<p>    $(".feed_type_radio").on("click", function(e) {</p>

<p> </p>

<p>        e.preventDefault();</p>

<p>        console.log(e.target.value);</p>

<p>        $.ajax({</p>

<p>            url : " <a href="http://localhost/bbs/dataloader/mix_data.php"," target="_blank" rel="noopener noreferrer">http://localhost/bbs/dataloader/mix_data.php",</a></p>

<p>            type : "post",</p>

<p>            data : {</p>

<p>                tbl : "g5_write_purchase_feed",</p>

<p>                target : e.target.value</p>

<p>            },</p>

<p>            success : function(res) {</p>

<p>                if(res) {</p>

<p>                    $("#feedTypeAddForm").html(res);</p>

<p>                    //alert("성공")</p>

<p>                    console.log(res)</p>

<p>                }</p>

<p>            },</p>

<p>            error : function(err){</p>

<p>                alert(err);</p>

<p>            }                                </p>

<p>        });</p>

<p> </p>

<p>    });</p>

<p>});</p>

<p> </p>

<p></script></p>

<p><section id="bo_w"></p>

<p>    <h2 class="sound_only"><?php echo $g5['title'] ?></h2></p>

<p> </p>

<p>    <!-- 게시물 작성/수정 시작 { --></p>

<p>    <form name="fwrite" id="fwrite" action="<?php echo $action_url ?>" onsubmit="return fwrite_submit(this);" method="post" enctype="multipart/form-data" autocomplete="off" style="width:<?php echo $width; ?>"></p>

<p>    <input type="hidden" name="uid" value="<?php echo get_uniqid(); ?>"></p>

<p>    <input type="hidden" name="w" value="<?php echo $w ?>"></p>

<p>    <input type="hidden" name="bo_table" value="<?php echo $bo_table ?>"></p>

<p>    <input type="hidden" name="wr_id" value="<?php echo $wr_id ?>"></p>

<p>    <input type="hidden" name="sca" value="<?php echo $sca ?>"></p>

<p>    <input type="hidden" name="sfl" value="<?php echo $sfl ?>"></p>

<p>    <input type="hidden" name="stx" value="<?php echo $stx ?>"></p>

<p>    <input type="hidden" name="spt" value="<?php echo $spt ?>"></p>

<p>    <input type="hidden" name="sst" value="<?php echo $sst ?>"></p>

<p>    <input type="hidden" name="sod" value="<?php echo $sod ?>"></p>

<p>    <input type="hidden" name="page" value="<?php echo $page ?>"></p>

<p>    <input type="hidden" name="wr_subject" value="멍멍이 사료"></p>

<p>    <input type="hidden" name="wr_content" value="멍멍이 사료"></p>

<p>

</p>

<p>        function addFeedName(e){</p>

<p>            let feedId = $(e).data('name');</p>

<p>            console.log(feedId);</p>

<p>            e.style.visibility = 'hidden';</p>

<p>            let feedIdRandom = document.getElementById(feedId).getAttribute('value');</p>

<p>            console.log(feedIdRandom);</p>

<p>            $("#feed_type_box").append("<div>"+feedIdRandom+"</div>");</p>

<p>            $("#feed_type_box").append("<div><input type='text' name='wr_content[0]' class='frm_input'> </div>");</p>

<p>            $("#feed_type_box").append("<div><input type='text' name='wr_content[1]' class='frm_input'></div>");</p>

<p>            $("#feed_type_box").append("<div><input type='text' name='wr_content[2]' class='frm_input'></div>");</p>

<p>            $("#feed_type_box").append("<div><input type='text' name='wr_content[3]' class='frm_input'></div>");</p>

<p>        }</p>

<p>

 

write_update.skin.php

</p>

<p><?php</p>

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

<p> </p>

<p>$wr_content = "$wr_content[0] $wr_content[1] $wr_content[2] $wr_content[3]";</p>

<p> </p>

<p>$sql = " update $write_table</p>

<p>            set  wr_content = '$wr_content'</p>

<p>          where wr_id = '$wr_id' ";</p>

<p>sql_query($sql);</p>

<p>?></p>

<p>

 

도대체 어떻게 해결해야할지 감이 잡히지 않습니다... 제발 도와주세요!!

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

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

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

로그인