셀렉트박스 배열로 시간 입력받기 - 커뮤니티

본문 바로가기
전체검색

커뮤니티

강좌 열람은 비회원도 볼 수 있게 모두 공개되어 있습니다.

셀렉트박스 배열로 시간 입력받기

그누사랑 17-05-06 09:48

안녕하세요~

그누스터디에서 열공중인 1인입니다~

아주아주 좋은 정보들을 많이 배우고 있어요~

 

질문이 있습니다.

 

------------------------

오전 09:00 ~ 오후 23:00

------------------------

 

위 처럼 셀렉트박스로 회원가입할때 시간정보를 받고싶은데요

 

셀렉트박스 배열을 이용해 회원여분필드(mb_10)에 받고싶은데

 

어떻게 하면 좋을까요?

 

text 배열은 좀 이해가 되는데 select 배열은 이해가 잘안되서요 ㅠㅠ

댓글목록 +6

댓글목록

profile_image

관리자님의 댓글

관리자 작성일

똑같습니다. name 만 분리하면 되는 겁니다.
예를 들어 좌우 나누면 2개로 쪼개면 될 테고 이렇게 할 수 있겠죠

<?php
$mb10 = explode("-",$member['mb_10']); // 시간
?>
<tr>
    <th scope="row">시간선택</th>
    <td>
        <select name="mb10[0]">
            <option value="">선택하세요.</option>
            <option value="오전 09:00" <?php echo ($mb10[0] == "오전 09:00") ? "selected" : "";?>>오전 09:00</option>
            <option value="오전 10:00" <?php echo ($mb10[0] == "오전 10:00") ? "selected" : "";?>>오전 10:00</option>
            <option value="오전 11:00" <?php echo ($mb10[0] == "오전 11:00") ? "selected" : "";?>>오전 11:00</option>
        </select>
        -
        <select name="mb10[1]">
            <option value="">선택하세요.</option>
            <option value="오후 09:00" <?php echo ($mb10[1] == "오후 09:00") ? "selected" : "";?>>오후 09:00</option>
            <option value="오후 10:00" <?php echo ($mb10[1] == "오후 10:00") ? "selected" : "";?>>오후 10:00</option>
            <option value="오후 11:00" <?php echo ($mb10[1] == "오후 11:00") ? "selected" : "";?>>오후 11:00</option>
        </select>
    </td>
</tr>​

register_form_update.tail.skin.php 파일도 방법은 똑같습니다.

$mb_10 = "$mb10[0]-$mb10[1]";
sql_query(" update {$g5['member_table']} set mb_10 = '$mb_10' where mb_id = '$mb_id' ");

profile_image

그누사랑님의 댓글의 댓글

그누사랑 작성일

skin/member/basic/register_form.skin.php 파일에

<?php
$mb10 = explode("-",$member['mb_10']); // 시간
?>
<tr>
    <th scope="row">상담시간</th>
    <td>
        <select name="mb10[0]">
            <option value="">선택하세요.</option>
            <option value="오전" <?php echo ($mb10[0] == "오전") ? "selected" : "";?>>오전</option>
            <option value="오후" <?php echo ($mb10[0] == "오후") ? "selected" : "";?>>오후</option> 
        </select>
        :
        <select name="mb10[1]">
        <option value="">선택하세요.</option>
        <option value=" 1시" <?php echo ($mb10[1] == " 1시") ? "selected" : "";?>> 1시</option>
        <option value=" 2시" <?php echo ($mb10[1] == " 2시") ? "selected" : "";?>> 2시</option>
        <option value=" 3시" <?php echo ($mb10[1] == " 3시") ? "selected" : "";?>> 3시</option>
<option value=" 4시" <?php echo ($mb10[1] == " 4시") ? "selected" : "";?>> 4시</option>
<option value=" 5시" <?php echo ($mb10[1] == " 5시") ? "selected" : "";?>> 5시</option>
<option value=" 6시" <?php echo ($mb10[1] == " 6시") ? "selected" : "";?>> 6시</option>
<option value=" 7시" <?php echo ($mb10[1] == " 7시") ? "selected" : "";?>> 7시</option>
<option value=" 8시" <?php echo ($mb10[1] == " 8시") ? "selected" : "";?>> 8시</option>
<option value=" 9시" <?php echo ($mb10[1] == " 9시") ? "selected" : "";?>> 9시</option>
<option value="10시" <?php echo ($mb10[1] == "10시") ? "selected" : "";?>>10시</option>
<option value="11시" <?php echo ($mb10[1] == "11시") ? "selected" : "";?>>11시</option>
<option value="12시" <?php echo ($mb10[1] == "12시") ? "selected" : "";?>>12시</option>
        </select>
        ~
        <select name="mb10[2]">
            <option value="">선택하세요.</option>
            <option value="오전" <?php echo ($mb10[2] == "오전") ? "selected" : "";?>>오전</option>
            <option value="오후" <?php echo ($mb10[2] == "오후") ? "selected" : "";?>>오후</option>
        </select>
        :
        <select name="mb10[3]">
        <option value="">선택하세요.</option>
        <option value=" 1시" <?php echo ($mb10[3] == " 1시") ? "selected" : "";?>> 1시</option>
        <option value=" 2시" <?php echo ($mb10[3] == " 2시") ? "selected" : "";?>> 2시</option>
        <option value=" 3시" <?php echo ($mb10[3] == " 3시") ? "selected" : "";?>> 3시</option>
<option value=" 4시" <?php echo ($mb10[3] == " 4시") ? "selected" : "";?>> 4시</option>
<option value=" 5시" <?php echo ($mb10[3] == " 5시") ? "selected" : "";?>> 5시</option>
<option value=" 6시" <?php echo ($mb10[3] == " 6시") ? "selected" : "";?>> 6시</option>
<option value=" 7시" <?php echo ($mb10[3] == " 7시") ? "selected" : "";?>> 7시</option>
<option value=" 8시" <?php echo ($mb10[3] == " 8시") ? "selected" : "";?>> 8시</option>
<option value=" 9시" <?php echo ($mb10[3] == " 9시") ? "selected" : "";?>> 9시</option>
<option value="10시" <?php echo ($mb10[3] == "10시") ? "selected" : "";?>>10시</option>
<option value="11시" <?php echo ($mb10[3] == "11시") ? "selected" : "";?>>11시</option>
<option value="12시" <?php echo ($mb10[3] == "12시") ? "selected" : "";?>>12시</option>
        </select>

        <input type="checkbox" name="mb_10" value="24시" <?php echo ($member['mb_10'] == "24시") ? "checked" : "";?>> 24시

    </td>
</tr>​

register_form_update.tail.skin.php 파일

<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
 
$mb_1 = "$mo[0]-$mo[1]-$mo[2]";
$sql  = " update {$g5['member_table']} set mb_1 = '$mb_1' where mb_id = '$mb_id' ";
sql_query($sql);
$mb_10 = "$mb10[0]:$mb10[1]~$mb10[2]:$mb10[3]";
sql_query(" update {$g5['member_table']} set mb_10 = '$mb_10' where mb_id = '$mb_id' ");
?>

/adm/member_form.php​ 파일에

    <tr>
        <th scope="row"><label for="mb_10">상담시간</label></th>
        <td><input type="text" name="mb_10" value="<?php echo $mb['mb_10'] ?>" id="mb_10" class="frm_input" size="30" maxlength="30"></td>
     
        </td>​
    </tr>


이런식으로 작업했는데 회원정보수정에서 수정을 하면
관리자회원정보 수정페이지에는 시간이 넘어와서 저장되지만
회원정보에서는 수정을해도 [선택하세요]로 원상복구 됩니다
ㅜㅜ제가 무엇을 잘못한걸까요 ㅠㅠ

profile_image

관리자님의 댓글의 댓글

관리자 작성일

관리자 페이지는 adm/member_form_update.php 파일에서 쿼리를 수정해야 합니다.

profile_image

관리자님의 댓글

관리자 작성일

다시 보니 여기를 이렇게 하시면 안 됩니다.
$mb_10 = "$mb10[0]:$mb10[1]~$mb10[2]:$mb10[3]";

배열을 쪼갤 때 구분 기호를 이렇게 '-' 로 해놨는데 저렇게 바꿔서 저장을 해버리면 수정 모드에서는 인식을 당연히 할 수가 없죠
$mb10 = explode("-",$member['mb_10']); // 시간

profile_image

그누사랑님의 댓글의 댓글

그누사랑 작성일

$mb10 = explode("-",$member['mb_10']); // 시간
여기에서 구분기호'-'를 여러개로 변경할순 없는거에요?ㅜㅜ
죄송합니다 너무 초보라 ㅠ

profile_image

관리자님의 댓글의 댓글

관리자 작성일

그렇게 사용하는 건 힘듭니다. 저장된 값을 불러와서 원래 배열에 맞게 다시 처리해야 하는데 번거롭죠
관리자 페이지 때문에 그렇게 변경해서 저장하는 거라면 그럴 필요 없이 회원정보 수정처럼 똑같이 해 놓으면 됩니다.
http://gnustudy.com/bbs/board.php?bo_table=skin_etc&wr_id=3

로그인 후 댓글 작성 가능합니다.

로그인

로그인 후 글 작성 가능합니다.
그누스킨닷컴

그누스터디는 그누보드, 영카트를 이용하시는 초보 사용자를 위한 정보를 공유합니다.

E-MAIL : gnustudy@naver.com / 카카오톡 : gnustudy / 텔레그램 : gnustudy
제작 문의를 제외한 일반 문의는 QA 게시판을 이용해주세요.

Copyright gnustudy.com All rights reserved.