펄스나인

회원 목록을 select 로 불러와서 선택시 input 에 집어넣기

· 2019-08-04 (일) 00:33:22 · 7026 · 24

프로젝트 관리 사이트 작업중에 구현한 부분을 공유합니다.

셀렉트박스로 회원 전체목록을 불러오고 선택시에 지정한 input으로 아이디를 넣어줍니다.

@어린왕자 님의 팁을 훔쳐와서 양념했습니다.

 

PHP

[code]

<?php
function get_member_opt_view($fild, $mb_id) 
{ 
  global $g5; 
$sql = " select * from $g5[member_table]"; 
    $result = sql_query($sql); 

    for ($i=0; $row=sql_fetch_array($result); $i++) 
    { 
        $str .= "<option value='$row[mb_id]'"; 
        if ($row[mb_id] == $fild or $row[mb_id] == $mb_id) $str .= " selected"; 
        $str .= ">$row[mb_id] ($row[mb_name])</option>"; 
    } 
    return $str; 
} 
?>

[/code]

 

 

HTML

[code]

<?php if ($is_admin) { //관리자일 경우만 보임 ?>

 

//회원정보를 셀렉트로 가져온다.

<select onchange="document.getElementById('wr_1').value = this.options[this.selectedIndex].value">
    <option value="">클라이언트 선택</option>
    <?php echo get_member_opt_view($fild, $mb_id) ?>
</select>

 

// 선택시 onchange 이벤트로 wr_1 에 value ($row[mb_id]) 값을 넣는다.

//  $str .= "<option value='$row[mb_id]'"; 부분을 수정하면 다른값을 넣을 수 있음

// input이 없고 select 만 있고 selected 가 필요한 경우는 아래에..

<input type="text" name="wr_1" id="wr_1" value="<?php echo $write['wr_1']; ?>">

 

<?php } ?>

[/code]

 

관리자만 보이는 용도로 작업된거라

권한 관련 테스트는 해보지 못하였습니다.

 

 

구현된 화면

 

1754226445_1564846047.9475.png

 

 

1754226445_1564846357.0394.png

 

 

1754226445_1564846373.3324.png

 

밑에 글자 조그맣게 나오는거는 input 입니다...

아닌것처럼 스타일만 줬습니다. 

선택전 : placeholder="선택된 클라이언트가 없습니다."

선택후 : value="<?php echo $write['wr_1']; ?>"

 

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

 

input이 없고 select 만 있는 경우는 
onchange="document.getElementById('wr_1').value = this.options[this.selectedIndex].value"

를 지워버리고 select 에 name="wr_1"  넣어주면 wr_1 로 value 값이 저장될거고

수정시 selected 될것 같습니다.

|

댓글 24개

2019-08-04 (일) 03:05:20
기능보다 ui에 눈이 쏠리는군요^^
좋게봐주셔서 감사합니다~! ^^
포에버님 플러그인에 비하면 아무것도 아니죠 ㅎㅎ
2019-08-04 (일) 20:44:06
ㅎㅎ감사합니다
일단 스크랩해놔야겠네요
감사합니다.
ㅎㅎ 쓸일이 있으실겁니다~!
2019-08-05 (월) 09:58:21
유용하네요~ 감사합니다.
감사합니다~
좋은 자료 감사합니다~!!
답변이 늦었네요!
감사합니다~
감사합니다^^
^^
2019-09-18 (수) 12:01:19
좋은 자료공유 감사합니다.
감사합니다~ 잘쓰셔요
2020-10-04 (일) 16:12:59
좋은 자료공유 감사합니다.
댓글 감사합니다!
좋네요 감사합니다.
@비올레 감사합니다!
와 정말 감사합니다!! 혹시 특정레벨 이상 회원만 불러오려면 어떤걸 추가하면 될까요?
@히햐
아래와같이 sql 문에 where 을 추가하시면 될것같습니다.
$sql = " select * from $g5[member_table] where mb_level BETWEEN 2 AND 10 "; 또는
$sql = " select * from $g5[member_table] where mb_level > 2 ";

BETWEEN 이 성능면에서는 좋을것 같습니다.
@펄스나인 너무너무 감사합니다 앞으로 적게 일하시고 많이 버세요!!(☞゚ヮ゚)☞
@히햐 ㅎㅎ 좋은말씀 감사합니다 ^^
감사합니다.

와우 좋은 팁이네요^^

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

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
19-09-15 조회 1.1만
19-09-13 조회 6,164
19-09-11 조회 8,279
19-09-09 조회 8,058
19-09-04 조회 8,167
19-09-02 조회 6,542
19-09-01 조회 7,685
19-08-30 조회 7,650
19-08-30 조회 1.1만
19-08-30 조회 6,783
19-08-29 조회 8,836
19-08-28 조회 7,883
19-08-26 조회 6,543
19-08-26 조회 5,653
19-08-25 조회 5,969
19-08-25 조회 5,802
19-08-22 조회 7,103
19-08-19 조회 7,370
19-08-16 조회 8,820
19-08-12 조회 6,096
19-08-10 조회 5,855
19-08-09 조회 5,935
19-08-09 조회 8,715
19-08-09 조회 1만
19-08-06 조회 5,819
19-08-05 조회 1.5만
19-08-05 조회 7,410
19-08-04 조회 7,027
19-08-02 조회 7,537
19-08-01 조회 5,834