상품 등록 시 태그 입력 채택완료
블랑숑
5년 전
조회 1,785
제가 게시판 태그 기능을 가져와서 상품에 붙여보려고
itemform.php에 다음과 같이 붙였습니다.
</p>
<p><form name="fitemform" action="./itemformupdate.php" method="post" enctype="MULTIPART/FORM-DATA" autocomplete="off" onsubmit="return fitemformcheck(this)"></p>
<p> </p>
<p><?php include_once('stopbuy.php'); //태그를 저장할 여분 필드 ?></p>
<p><input type="hidden" name="it_7" id="it_7">
<div class="tagList">
<div class="tagListIpt">
<ul>
<?
if($it['it_7']){
$tags = explode(',',$it['it_7']);
for($i=0; $i<count($tags); $i++){
echo '<li class="tag">#<span>'.$tags[$i].'</span><i class="material-icons">clear</i></li>';
}
}
?>
<li class="tabTxt"><input type="text" id="tagIpt" placeholder="아이디를 입력해주세요!" maxlength="15"></li>
</ul>
</div>
</div></p>
<p>
</form></p>
<p> </p>
<p><script></p>
<p>function fitemformcheck(f)
{ inputTagList(); }</p>
<p></script></p>
<p>
stopbuy.php
</p>
<p><script></p>
<p>$(window).ready(function(){
$(document).on('click','.tag > i',function(){
$(this).parent().remove();
});</p>
<p> </p>
<p> $("#tagIpt").on("keyup", function(event) {
$(".tagListIpt ul li span").removeClass('overlap');
if(event.keyCode == 32){
$(this).val($(this).val().replace(/ /gi, ""));
inputTag($(this).val());
}
});</p>
<p>});</p>
<p>function inputTagList(){
var linCnt = $(".tagListIpt ul li.tag").length;
var tag = '';
for(var i=0; i<linCnt; i++){
var j = i+1;
if(!tag){
tag = $(".tagListIpt ul li:nth-child("+j+") span").html();
}else{
tag += ','+$(".tagListIpt ul li:nth-child("+j+") span").html();
}
}
tag = tag.replace(" ", "");
console.log('after replace : '+tag);
$("#it_7").val(tag);
}</p>
<p>function chkOverlap(a){
var linCnt = $(".tagListIpt ul li.tag").length;
var overlap = false;
for(var i=0; i<linCnt; i++){
var j = i+1;
if(a == $(".tagListIpt ul li:nth-child("+j+") span").html()){
$(".tagListIpt ul li:nth-child("+j+") span").addClass('overlap');
overlap = true;
}
}</p>
<p> return overlap;
}</p>
<p>
function inputTag(a){
a = a.replace(/ /g, '');
var linCnt = $(".tagListIpt ul li.tag").length;
if(chkOverlap(a) == false){</p>
<p> if(linCnt < 30){
var taghtml_ = '';
taghtml_ += '<li class="tag">#<span>';
taghtml_ += a;
taghtml_ += '</span><i class="material-icons">clear</i></li>';
$(".tabTxt").before(taghtml_);
}else{
alert('아이디 입력은 최대 30개까지 가능합니다.');
}
$("#tagIpt").val('');</p>
<p> }
} </p>
<p></script></p>
<p>
그런데 입력폼 자체는 잘 써지는데 저장이 이상하게 됩니다.
처음에는 저장이 아예 안되는건줄 알았는데
DB에서 뭔가를 강제로 입력 후, 입력폼에서 텍스트를 넣고 저장시 DB가 비어지게 됩니다.
뭔가 잘못된게 있나요?
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
답변을 작성하려면 로그인이 필요합니다.
로그인