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

초보를 위한 SELECT (셀렉트박스) 함수로 만들어 쉽게 사용하기.

· 8년 전 · 10755 · 13
소스를 줄여보기 위한 방법으로 셀렉트박스의 옵션부분을 함수로 만들어서 쉽게 사용하는 방법입니다.
옵션값이 많을 경우 소스를 줄여주는 효과가 있습니다.


* 옵션값의 구분은 "|"으로 되어 있으나 다른 문자로 변경해서 사용해도 됩니다.



1. 함수부분 : 아래 소스를 /lib/common.lib.php 파일에 추가하거나 페이지에 직접 추가해도 됩니다.

[code]
// option_str(text,value,selected 속성을 줄 value)
function option_str($data1,$data2,$option_name=''){

$data1=explode("|",$data1); // 구분자가 "|"로 되어 있으나 다른 문자로 변경 가능
$data2=explode("|",$data2); // 구분자가 "|"로 되어 있으나 다른 문자로 변경 가능
for($i=0; $i < count($data1); $i++){$dataA[$i]=trim($data1[$i]);}
for($i=0; $i < count($data2); $i++){$dataB[$i]=trim($data2[$i]);}
for($i=0; $i < count($data2); $i++){
$selected=($option_name==$dataB[$i])? "selected":"";
$result .="<option value='$dataB[$i]' $selected>$dataA[$i]</option>\n\t\t\t";
}

return($result);
}
[/code]

2. 사용법은 아래와 같이...
[code]
<select name="area" class="area">
<?php echo option_str("=선택=|서울|경기|대전", "|서울|경기|대전", $area); ?>
</select>
[/code]


3. 다른 사용법 (1)
[code]
<?php
$text = "|서울|경기|대전";
$value = "|서울|경기|대전";

?>
<select name="area" class="area">
<?php echo option_str("=선택=".$text, $value, $area); ?>
</select>
[/code]


3. 다른 사용법 (2)
[code]
<?php
$text = "=선택=|서울|경기|대전";
$value = "|서울|경기|대전";

?>
<select name="area" class="area">
<?php echo option_str($text, $value, $area); ?>
</select>
[/code]

4. 다른 사용법 : DB내용을 불러와서 만들기.
[code]
<?php
$sql = "select id_no, name from TABLE_NAME where (1) order by name asc";
$result = sql_query($sql);
while($row=sql_fetch_array($result)) {
$text .= "|".$row[name];
$value .= "|".$row[id_no];
}
?>
<select name="area" class="area">
<?php echo option_str("=선택=".$text, $value, $area); ?>
</select>
[/code]

댓글 작성

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

로그인하기

댓글 13개

실행해보니 바뀌는 속도가 살짝 딜레이가 있네요
5년 전
유용하네요..
좋은 정보 감사합니다

게시글 목록

번호 제목
24318
24317
24315
24309
24294
24293
24277
24262
24260
24253
24251
24236
24233
24228
24226
24221
24214
24203
24201
24199
24196
24195
24194
24192
24191
24187
24185
24183
24172
24168