php $_POST Array 데이터 받기


value1=2012251&value1=2012254&value2=531&value2=544

데이터를 위 방법으로 붙여서 던지면 겹쳐져서 Array 로 받아 올수 있다고 봤는데 실제로 해보니 맨 마지막 값만 불러오게 되었습니다. array 로 받으려 여러 가지 방법을 시도해보았지만 아직까지 찾지 못했습니다. 어떤 방법으로 값을 받아와야 하나요?

$arrValue1 = $POST["value1"]; $arrValue2 = $POST["value2"];

echo $arrValue1 2012251

echo $arrValue2 544

  • 2016년 04월 25일에 작성됨

조회수 2730


Banner summercoding 2x copy mjjdfw

2 답변


아래 HTML과 같이 Post한다면 name에 []를 넣어주어야 합니다.

Date 1:<input name="date[]" type="text"><br>
Date 2:<input name="date[]" type="text"><br>
Date 3:<input name="date[]" type="text"><br>

아래와 같이 읽어오면 Array로 받아 옵니다.

$email = $_POST['date'];   
  • 2016년 04월 25일에 수정됨
    루비와 파이썬을 좋아합니다. 새로운 언어를 배우는것도 좋아해요. 요즘은 개발은 주로 레일즈 사이트 수정하는 일을 하고, 예전에는 모바일 게임도 조금 만들어 봤습니다.
  • 2016년 04월 25일에 작성됨
    루비와 파이썬을 좋아합니다. 새로운 언어를 배우는것도 좋아해요. 요즘은 개발은 주로 레일즈 사이트 수정하는 일을 하고, 예전에는 모바일 게임도 조금 만들어 봤습니다.


같은 키값으로 여러개를 전달하면, 해당 값은 이미 배열입니다.

다음과 같이 처리하시면 됩니다.

$value1s = $_POST['value1'];
$value2s = $_POST['value2'];

// 각각은 다음과 같이 해보세요.
foreach($value1s as $value) {
  print "폼 value1 은 ".$value."\n";
}
foreach($value2s as $value) {
  print "폼 value2 는 ".$value."\n";
}

// 만약 value1과 value2가 개수가 동일하고 같이 접근해야 한다면 다음과 같이 써보세요.
foreach( $value1 as $key => $val ) {
  print "폼 value1 은 ".$val." 이고 value2 는 ".$value2s[$key] 이다.\n";
}

위와 같이 foreach문을 써서 모든 값을 조회가능합니다.

  • 2016년 04월 25일에 작성됨
    리눅스(유닉스) 기반의 시스템에서 웹 서비스를 개발하고 있습니다.

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close