회원 목록을 select 로 불러와서 선택시 input 에 집어넣기
프로젝트 관리 사이트 작업중에 구현한 부분을 공유합니다.
셀렉트박스로 회원 전체목록을 불러오고 선택시에 지정한 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]
관리자만 보이는 용도로 작업된거라
권한 관련 테스트는 해보지 못하였습니다.
구현된 화면



밑에 글자 조그맣게 나오는거는 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개
포에버님 플러그인에 비하면 아무것도 아니죠 ㅎㅎ
감사합니다.
감사합니다~
아래와같이 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 팁자료실
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 공지 | 3년 전 | 4426 | ||
| 2574 | 10개월 전 | 561 | ||
| 2573 | 10개월 전 | 937 | ||
| 2572 |
두리삼촌v
|
10개월 전 | 609 | |
| 2571 | 10개월 전 | 556 | ||
| 2570 | 10개월 전 | 599 | ||
| 2569 |
두리삼촌v
|
10개월 전 | 638 | |
| 2568 |
두리삼촌v
|
10개월 전 | 666 | |
| 2567 |
두리삼촌v
|
10개월 전 | 462 | |
| 2566 |
두리삼촌v
|
10개월 전 | 442 | |
| 2565 | 10개월 전 | 740 | ||
| 2564 | 10개월 전 | 670 | ||
| 2563 | 10개월 전 | 473 | ||
| 2562 | 10개월 전 | 1030 | ||
| 2561 |
|
10개월 전 | 675 | |
| 2560 | 11개월 전 | 919 | ||
| 2559 | 11개월 전 | 657 | ||
| 2558 |
|
11개월 전 | 504 | |
| 2557 | 11개월 전 | 656 | ||
| 2556 | 11개월 전 | 957 | ||
| 2555 | 11개월 전 | 1338 | ||
| 2554 | 11개월 전 | 753 | ||
| 2553 |
|
11개월 전 | 747 | |
| 2552 | 11개월 전 | 676 | ||
| 2551 | 11개월 전 | 864 | ||
| 2550 | 11개월 전 | 766 | ||
| 2549 |
|
11개월 전 | 717 | |
| 2548 | 11개월 전 | 1031 | ||
| 2547 | 11개월 전 | 673 | ||
| 2546 | 11개월 전 | 1206 | ||
| 2545 | 11개월 전 | 663 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기