채택완료

셀렉트 체크 질문입니다

2023-01-18 (수) 10:24:08 1,733
Copy
<?php if($is_admin){?>
        <label for="wr_2"  class="sound_only">분류<strong>필수</strong></label>
        <select name="wr_2" id="wr_2" required>
            <option value="미처리" <?php if($wr_2 == '미처리') echo " selected"; ?>>미처리</option>
            <option value="처리중" <?php if($wr_2 == '처리중') echo " selected"; ?>>처리중</option>
            <option value="처리완료" <?php if($wr_2 == '처리완료') echo " selected"; ?>>처리완료</option>
        </select>
        <?php } else { ?>
        <label for="wr_2"  class="sound_only">분류<strong>필수</strong></label>
        <select name="wr_2" id="wr_2" required>
            <option value="미처리" <?php if($wr_2 == '미처리') echo " selected"; ?>>미처리</option>
            <option value="처리중" <?php if($wr_2 == '처리중') echo " selected"; ?>>처리중</option>
            <option value="처리완료" <?php if($wr_2 == '처리완료') echo " selected"; ?>>처리완료</option>
        </select>
        <?php } ?>

어드민말고 일반 회원일때 셀렉트를 못하게하는 코드가 있을까요?

|

답변 5개 / 댓글 2개

채택된 답변
+20 포인트

답변에 대한 댓글 1개

감사합니다!
Copy
<select name="wr_2" id="wr_2" required disabled>

이런식으로 막을 수도 있어요

답변에 대한 댓글 1개

그럼 표출은 되는데 데이터로 들어가지는 않네요 ㅠㅠ
2023-01-18 (수) 12:16:35

셀롁트 사이즈와 동일한 크기의 투명 div 를 만들어서 포지션이나 역마진등으로 셀렉트를 덮어 버리세요.

disabled나 스크립트로 막을순 있지만 제일 좋은건 

어드민이 아닐 경우엔 select를 아예 보여주지않고 텍스트로만 현재 상황을 보여주고

처리하는 페이지에서도 어드민이 아닐경우 

처음 등록시에는 wr_2 값을 미처리로 고정시켜버리고 

수정일 경우엔 wr_2 값을 db에 있는걸 그대로 반영하도록 하는것이 가장 깔끔하고 좋을듯 하네요. 

셀렉트를 못하게한다하면, 그냥 해당 상태의 text만 출력해주시고

뒤에서 hidden값으로 넘기면 안될까요?

Copy
<?php if($is_admin){?>
<label for="wr_2"  class="sound_only">분류<strong>필수</strong></label>
<select name="wr_2" id="wr_2" required>
    <option value="미처리" <?php if($wr_2 == '미처리') echo " selected"; ?>>미처리</option>
    <option value="처리중" <?php if($wr_2 == '처리중') echo " selected"; ?>>처리중</option>
    <option value="처리완료" <?php if($wr_2 == '처리완료') echo " selected"; ?>>처리완료</option>
</select>
<?php } else { ?>
<label for="wr_2"  class="sound_only">분류<strong>필수</strong></label>
<input type="hidden" name="wr_2" value="<?php echo $wr_2 ?>">
<span><?php echo $wr_2;?></span>
<?php } ?>

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