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

셀렉트에서 옵션에 여러값을 나눠 입력시... 채택완료

탐크루지 2년 전 조회 1,872

안녕하세요. 

한 필드에 여러 값을 입력하고 있는데요. 

셀렉트에서 옵션에는 어떤식으로 넣어야 하는지요?

wr_19[<?=$i?>] 이것을

$write['wr_19<?=$i?>'] == '미납' 혹은

$write['wr_19[<?=$i?>]'] == '미납' 혹은

$write['wr_19'] & <?=$i?> == '미납'

ㅎㅎㅎ 너무 초보라.... 어떤식으로 하는지 알려주시면 감사하겠습니다. 

</p>

<p><td>

   <select id="wr_19[<?=$i?>]" name="wr_19[<?=$i?>]" required>

    <option value="">---결제상태---</option>

    <option value="미납" <?php echo ($write['wr_19'] == '미납') ? " selected" : "";?>>미납</option>

    <option value="분납" <?php echo ($write['wr_19'] == '분납') ? " selected" : "";?>>분납</option>

    <option value="완납" <?php echo ($write['wr_19'] == '완납') ? " selected" : "";?>>완납</option>

    <option value="환불" <?php echo ($write['wr_19'] == '환불') ? " selected" : "";?>>환불</option>

    <option value="취소" <?php echo ($write['wr_19'] == '취소') ? " selected" : "";?>>취소</option>

    </select>

</td></p>

<p>

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

답변 4개

채택된 답변
+20 포인트

다음과 같은 방법도 있으니 참고 해보세요

 

</p>

<p><?php

if (!defined('_GNUBOARD_')) exit; </p>

<p>// 필드명과 기본값 설정

$payment_statuses = array("미납", "분납", "완납", "환불", "취소");

$wr_19_values = explode(',', $write['wr_19']); // 현재 선택된 값들을 배열로 분할</p>

<p>?></p>

<p><!-- 필드 표시 시작 -->

<tr>

    <th scope="row"><label for="wr_19">결제상태</label></th>

    <td>

        <select id="wr_19" name="wr_19[]" required multiple>

            <option value="">---결제상태---</option>

            <?php foreach ($payment_statuses as $status) { ?>

                <option value="<?php echo $status; ?>" <?php echo (in_array($status, $wr_19_values)) ? "selected" : ""; ?>><?php echo $status; ?></option>

            <?php } ?>

        </select>

    </td>

</tr>

<!-- 필드 표시 끝 -->

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

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

name 에 [<?=$i?>] 을 뻬야됩니다.
</strong>
</pre>

<pre>
<code><td>
   <select id="wr_19[<?=$i?>]" name="wr_19" required>
    <option value="">---결제상태---</option>
    <option value="미납" <?php echo ($write['wr_19'] == '미납') ? " selected" : "";?>>미납</option>
    <option value="분납" <?php echo ($write['wr_19'] == '분납') ? " selected" : "";?>>분납</option>
    <option value="완납" <?php echo ($write['wr_19'] == '완납') ? " selected" : "";?>>완납</option>
    <option value="환불" <?php echo ($write['wr_19'] == '환불') ? " selected" : "";?>>환불</option>
    <option value="취소" <?php echo ($write['wr_19'] == '취소') ? " selected" : "";?>>취소</option>
    </select>
</td></code></pre>

<p><strong>

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

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

복스리
2년 전

생각보다 간단하게 처리하실수 있습니다.

입력받은 값이 결론적으로   wr_19[<?=$i?>] 즉 조금 출력쪽으로 풀이하자면,.$i값이 1인경우.

wr_191 <-- 요렇게 되는 것이겠네요?

그럼 value값을 불러올때도..  $write['wr_191']  <-- 요렇게 불러와야 맞게 되겠죠?

그래서 뒤에다가 .$i만 추가적으로 넣어주시면 될 꺼 같습니다. 아래 소스를 참고 해주시면될꺼 같습니다

 

</p>

<pre>
<code><td>
   <select id="wr_19[<?=$i?>]" name="wr_19[<?=$i?>]" required>
    <option value="">---결제상태---</option>
    <option value="미납" <?php echo ($write['wr_19'.$] == '미납') ? " selected" : "";?>>미납</option>
    <option value="분납" <?php echo ($write['wr_19'.$] == '분납') ? " selected" : "";?>>분납</option>
    <option value="완납" <?php echo ($write['wr_19'.$] == '완납') ? " selected" : "";?>>완납</option>
    <option value="환불" <?php echo ($write['wr_19'.$] == '환불') ? " selected" : "";?>>환불</option>
    <option value="취소" <?php echo ($write['wr_19'.$] == '취소') ? " selected" : "";?>>취소</option>
    </select>
</td></code></pre>

<p>

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

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

M
2년 전
wr_19[<?=$i?>] 은 wr_19가 여러개 라고 하시는거잖아요?

</p>

<p><td>

   <select id="wr_19[<?=$i?>]" name="wr_19[<?=$i?>]" required>

    <option value="">---결제상태---</option>

    <option value="미납" <?php if (strpos($write['wr_19'], '미납') !== false ) echo " seleted";?>>미납</option>

    <option value="분납" <?php if (strpos($write['wr_19'], '분납') !== false ) echo " seleted";?>>분납</option>

    <option value="완납" <?php if (strpos($write['wr_19'], '완납') !== false ) echo " seleted";?>>완납</option>

    <option value="환불" <?php if (strpos($write['wr_19'], '환불') !== false ) echo " seleted";?>>환불</option>

    <option value="취소" <?php if (strpos($write['wr_19'], '취소') !== false ) echo " seleted";?>>취소</option>

    </select>

</td></p>

<p>

으로 바꾸시면 될듯 합니다.

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

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

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

로그인