wr_content 내용 저장 방법 채택완료
고수님들 안녕하세요ㅠㅠㅠ
제가 지금 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개
이름은 아무렇게나 동일하게만하셈 name = "content[]" 이런식으로 배열로 해주고
쿼리문날릴떄 implode로 한줄로 만들어주고
다시 뽑을때는 explode로 뽑아서 나눠서 넣고
답변에 대한 댓글 2개
댓글을 작성하려면 로그인이 필요합니다.
저가 지금까지 진행한게
</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>
도대체 어떻게 해결해야할지 감이 잡히지 않습니다... 제발 도와주세요!!
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
name = "content[ ]"이렇게만 쓰면 된다는 건가요? content[0] 이런식으로 안에 숫자를 넣을 필요가 없나요?
그리도 궁금한게 배열을 사용하면 write.skin.php에서 업데이트로 저는
$wr_2 = $content[0] $content[1] 이런식으로 했는데
그럼 바로 $wr_2 = $content[ ] 이렇게 작성하면 되는 건가욤???