2012-04-15 3 views
1

좋아, 내가 양식 index.html을 가지고PHP 처리하는 여러 체크 박스

<table> 
    <tr> 
    <th>Field(s):</th> 
    <td> 
     <?php 
     if(isset($_POST['Field'])) 
     { 
      for($i = 0; $i < count($_POST['Field']); $i++) 
      { echo $_POST['Field'][$i] . ' '; } 
     } 
     ?> 
    </td> 
    </tr> 
</table> 

을하지만 어떤 이유로, 나는 단지 확인 된 마지막 체크 박스의 첫 글자를 출력한다. 도와주세요! `및`$ _POST [ '필드'] '의 인덱스는 당신이 그들이 무슨 생각을하는지 확인, 내 서버에 그대로

+0

그 스크립트는 몇 가지 빠른 선별을 위해, ($ _ POST)'위해서 var_dump를 시도, 작동 . 또한 어떤 서버 플랫폼/버전을 사용하고 있습니까? – Foran

+0

Windows 7 Professional에서 XAMPP를 실행 중이므로 Apache/Windows 7 Pro. 또한 var_dump ($ _ POST)가 표시됩니까? 나는 아직도 PHP를 배우고 있으므로 잘 모르겠습니다. –

+0

Muhammed의 답변이 작동한다고 가정하면 서버 환경이 다른 색인을 생성했다고 말할 수 있습니다. 'var_dump ($ _ POST)'는 좋은 디버깅 도구/문장입니다. 예상대로 작동하지 않고'echo'가 필요하지 않습니다. – Foran

답변

5
Try this one in process.php to get the values from $_POST['Field'] 

    <table> 
    <tr> 
    <th>Field(s):</th> 
    <td> 
     <?php 
     if(isset($_POST['Field'])) 
     { 
      foreach ($_POST['Field'] as $value) { 
      echo $value; 
      } 
     } 
     ?> 
    </td> 
    </tr> 
    </table> 
+1

지금 제공 한 것처럼 작동하지만 색인에서 자바 스크립트 오류를 ​​검사합니다. html은 더 이상 제출하기 전에 양식 데이터의 유효성을 검사하지 않습니다. index.html 페이지를 수정하지 않았으므로이 시점에서 완전히 혼란 스럽습니다. –

+2

process.php는 서버 측에서 실행되므로 javascript 코드에는 영향을 미치지 않습니다. index.html의 자바 스크립트 코드를 두 번 확인하거나 index.html 코드를 여기에 게시하십시오. 누군가가 그것을 확인하고 맑은 설명을 해줄 수 있습니다. –

+1

신경 쓰지 마세요, 나는 방화범을 사용하여 오류를 추적했습니다. 이름 끝에 []를 사용하여 체크 박스의 이름을 변경해야 할 때 해당 필드에 대한 자바 스크립트 오류 검사가 중단되었습니다. 그래서 필드 이름을 사용하여 유효성을 검사하는 대신 요소 배열로 변경해야했습니다. 즉 for (var i = 0; i