리스트 특정 필드 수정하기 (체크된 박스 구분)

리스트 특정 필드 수정하기 (체크된 박스 구분)

QA

리스트 특정 필드 수정하기 (체크된 박스 구분)

본문

제가 하고자 하는건 list 에 셀렉트를 달아서 여분 필드를 수정하고 싶습니다.

 

소스는 https://sir.kr/qa/133305

위에 링크의 보들이윤 님의 소스를 참고하였습니다.

 


   <?php if($is_admin) {?>
            <?php if ($list_href || $is_checkbox || $write_href) { ?>
               <div class="bo_fx">
            <td><!-- 상태 변경 -->
            <form action="./board_list_update.php" method="post" >
            <select id="wr_1[<?echo $i?>]" name="wr_1[<?echo $i?>]">
            <option value="">상태변경</option><option value="작동중" <?if($list[$i]['wr_1']=="작동중") echo "selected"; ?>>작동중</option>
            </select>
             <ul class="btn_bo_adm">
                                 <?php if ($is_checkbox) { ?>
            <li><input type="submit" name="btn_submit" value="선택수정" onclick="document.pressed=this.value"></li>
            <?php } ?>
            </ul>
            </form>
            </td> <?php    }} ?>
 

 


   <?php if($is_admin) {?>
            <?php if ($list_href || $is_checkbox || $write_href) { ?>
               <div class="bo_fx">
            <td><!-- 상태 변경 -->
            <form action="./board_list_update.php" method="post" >
            <select id="wr_1[<?echo $i?>]" name="wr_1[<?echo $i?>]">
            <option value="">상태변경</option><option value="작동중" <?if($list[$i]['wr_1']=="작동중") echo "selected"; ?>>작동중</option>
            </select>
             <ul class="btn_bo_adm">
                                 <?php if ($is_checkbox) { ?>
            <li><input type="submit" name="btn_submit" value="선택수정" onclick="document.pressed=this.value></li>
           <!--- 실수로 this.value" 에 " 빼먹고 저장을 했는데 정상 작동 합니다. 이유가 뭘까요 ㅠ--> 
 
 <?php } ?>
            </ul>
            </form>
            </td> <?php    }} ?>
 

 

 

제일 상단에 게시물의 셀렉트를 선택하고 체크를 한 다음 수정을 누르면 DB의 값이 변경됩니다. 정상작동하는 것 같으나

 

두 번째 보이는 게시물 부터는 수정이 되지 않고 하나 이상의 게시물을 선택해주세요 라는 오류 알람이 뜹니다.

체크 board_list_update 에서 나오는 것으로 확인했는데 

어디가 잘못됐는지 찾기가 참 어렵습니다.

 

 <li><input type="submit" name="btn_submit" value="선택수정" onclick="document.pressed=this.value></li> 

 

"을 빼먹고 저장을 했는데 작동을 합니다 이유가 뭘까요

 

이것 저것 지우다 

</form> 을 지웠는데 정상 작동합니다. 이찝찝함

이 질문에 댓글 쓰기 :

답변 1

button 태그에 타입을 명시해 주지 않으면,

브라우저에 따라 'submit' 으로 기본 인식되기도 합니다.

 

기존 소스에 button 의 type 속성이 별도로 지정되어 있지 않습니다.

그래서 form 의 submit 버튼으로 처리되었고, 해당 소스의 form 의 action 파일인 board_list_update.php 처리도 같이 되었을 것입니다.

 

type 속성을 submit 이 아닌 button 으로 명시해 주어야,

이러한 작동을 피할 수 있습니다. http://blog.freezner.com/archives/807 ,  http://zero-gravity.tistory.com/226

<button type="button>수정</button>

답변을 작성하시기 전에 로그인 해주세요.
전체 152
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT