NOTICE

배열로 값 넘길 때

Date : 2010. 3. 5. 18:16 Category : Programming/PHP
  1. <form action="form.php" method="post">
  2.     <input type="checkbox" name="attach[]" value="1" />
  3.     <input type="checkbox" name="attach[]" value="2" />
  4.     <input type="checkbox" name="attach[]" value="3" /><br />
  5.     <input type="text" name="t[]" /><br />
  6.     <input type="text" name="t[]" /><br />
  7.     <input type="text" name="t[]" /><br />
  8.     <select name="test">
  9.         <option>test</option>
  10.         <option value="1">1</option>
  11.         <option value="2">2</option>
  12.     </select><br />
  13.     <input type="submit" value="submit" />
  14. </form>


배열로 넘기는 예제다.
배열이라고 다 같을 줄 알았는데...
typecheckbox인 애는 체크가 안 될 경우 key가 아예 안 찍힌다.

print_r($_POST);

해 보면 "attach"라는 애가 아예 보이질 않는다.
typetext인 애는 key가 찍힌다.

그리고 한 가지 더!

보통 select의 경우 가장 처음 option은 value 속성을 아예 안 넣고 위처럼 코딩하는 경우가 많다.
--선택-- 혹은 --- 이런 것들이 말한 예이겠다.
아래 링크에선 value가 없는 애를 선택하면 value가 없기 때문에 값이 안 찍힐 것 같지만 버젓이 test라는 값이 찍혀서 나온다.



확인해 보자스라!



* 정중한 태클은 감사하지만 '이뭐병', '이 색히 개발자라는 게 그런 것도 모르냐?' 같은 비아냥은 거절합니다.