회원 정보 수정시 select로 받은 값이 전부 null로 입력 됩니다.

회원 정보 수정시 select로 받은 값이 전부 null로 입력 됩니다.

QA

회원 정보 수정시 select로 받은 값이 전부 null로 입력 됩니다.

본문

안녕하세요.

 

짧은 실력으로 이리저리 봐도 모르겠읍니다.

 

회원님들이 정보 수정할려고 로그인 후 정보 수정으로 들어가면

INPUT으로 받은 값들은 전부 입력 필드에 보여서 수정하면 됩니다.

 

근데 select로 받은 값은 전부 다폴트인 "선택하세요"로 표시되고 선택하지 않고 수정 완료를 눌리면 기존의 select로 받는 값들이  전부 null로 디비에 저장됩니다. (당년히 선택을 하지 않았으니까요)

 

처음 회원 등록시 select로 입력 받는 부분을 require로 처리해서 선택하지 않으면 회원 등록이 안되게 했는데........... 회원 수정에서는 require가 안 먹히고 바로 등록 되며 선택하지 않은 select 값은 전부 null로 저장 되니.  어딜 수정 해야 될지 모르겠읍니다.

 

아니면 회원 정보 수정에서 input값이 필드에 표기되는 것 처럼 select 값도 표시되어 수정 되지 않으면 표시된 select값이 그대로 등록 되게하는 방법도 좋은 방법 같구요.

 

정말 급한일 입니다., 제발 좀 도와 주세요.

 

이 질문에 댓글 쓰기 :

답변 2

글수정의 경우 그 전에 지정했던 option태그에 selected 줘야 합니다.

예를 들어보면

 

    echo "<option value='free' ";

    if ($w == 'u' && $row['bo_table'] == 'free') echo ' selected';

    echo " >자유게시판</option>";

 

고맙습니다. 아래의 소스가 저희 사이트 회원 등록 페이지의 select 예문입니다.
  <tr>
                <td class=m_title>성별선택</td>
  <input type=hidden name=sex itemname="성별" value="<?php echo
                    $member['mb_9'] ?>">
    <select id=mb_9 name=mb_9 <?php echo $required ?> itemname='성
                  별'>
    <option value=''>선택하세요
                    <option value='F'>여자
                    <option value='M'>남자
                  </select>
    </tr>

위 예문 처럼 처음 회원 등록시 mb_9에 성별이 "M'또는 "F"로 DB에 저장됩니다.
근데 회원 수정으로 들어가면 select로 받은 값들은 전부 디폴트 "선택하세요"로 나오고 회원 수정완료하면 당연히 null입력이 되어 데이타가 없읍니다.

그래서
input문 위에
<?php if ($w == 'u' && $member['mb_9'] != ''){ ?>
  <td>:<font color='red'><?php echo $member['mb_9'] ?></font></td>
<? } else { ?>

하면 처음에는 회원 등록시 입력한 데이타가 옆에 표시 됩니다. 근데 역시 회원 수정 완료를 하면 있던 데이타도 없어지고 null이 들어 갑니다. select로 받은 필드들은 수정 못해도 되니 있는 값을 그대로 넘어가는 방법좀 알려 주세요.

input에 넣으면 안되고 option에 문제가 있으니까 option 태그 둘 다에 넣으셔야 합니다.
다음처럼

<option value='F' <?php if ($w == 'u' && $member['mb_9'] == 'F') echo ' selected';?>>여자</option>
<option value='M' <?php if ($w == 'u' && $member['mb_9'] == 'M') echo ' selected';?>>남자</option>

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

회원로그인

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