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

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

· 8년 전 · 10756 · 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년 전
유용하네요..
좋은 정보 감사합니다

게시글 목록

번호 제목
24149
24140
24133
24125
24119
24109
24105
24101
24093
24089
24077
24074
24071
24070
24067
24056
24050
24046
24043
24040
24037
24036
24035
24034
24021
24017
24005
24002
23990
23980