How do I get all the results from a select multiple HTML tag?
:다중 선택 (select multiple) HTML 태그에서 어떻게 모든값을 가져올수 있습니까?
(HTML 4.x이상, Javascript 1.x이상, PHP 4.x 이상 의 경우)
The select multiple tag in an HTML construct allows users to select multiple items from a list. These items are then passed to the action handler for the form. The problem is that they are all passed with the same widget name. ie.
:다중 선택 (select multiple)태그는 리스트 중에서 여러 아이템을 선택할수있게 합니다. 이 아이템들은 폼의 액션 핸들러로 보내집니다. 문제는 그들이 같은 위젯(widget)명으로 전달이 된다는 것입니다.
<select name="var" multiple>
선택된 각 옵션(option)값은 액션 핸들러에 다음처럼 도착합니다:
var=option1
var=option2
var=option3
각 옵션은 $var변수의 이전 값을 덮어쓸것입니다. 해결방법은 PHP의 "폼 엘리먼트의 배열" 특성을 이용하는 것입니다. 다음처럼 사용합니다.
<select name="var[]" multiple>
이것은 PHP가 $var변수를 배열로 취급하고 배열의 각 아이템이 var[]로 지정되도록 합니다. 첫번째 아이템은 $var[0] 다음은 $var[1], 등등이 됩니다. count()함수로 몇개의 옵션이 선택되었는지 알수 있습니다. 필요하다면 sort()함수로 옵션 배열을 정렬할수도 있을것입니다.
자바스크립트에서 각 엘리먼트에[]을 사용하는것은 문제가 발생한다는것을 명심해야 합니다. 대신에 숫자 폼의 ID를 사용하기 바랍니다. 또는 작은 따옴표로 변수명을 싸주십시오 그리고 엘리먼트 배열의 인덱스로 사용합니다. 예를 들면 다음과 같습니다.
variable = documents.forms[0].elements['var[]'];
*자료출처 :
http://www.php.net/manual/kr/faq.html.php#faq.html.select-multiple
댓글 없음:
댓글 쓰기