2013-09-30 2 views
0

웹에서이 문제에 대한 해결책을 찾았지만 찾지 못했습니다. 문제는 - 폼이 있고 자바 스크립트 함수가있는 버튼이 있는데, 이는 입력을 추가합니다. 이 입력 변수를 PHP $_POST 배열에 전달한 후 동적으로 생성 된 입력을 제외한 모든 것을 출력합니다. 동적으로 생성 된 입력이 표시되지 않는 이유는 무엇입니까?

<form action="page.php" method="post" id="rekins"> 
    <p>Invoice Number: <input type="text" name="nr" /></p> 
    <p>Account: <input type="text" name="konts" /></p> 
    <h1>Services:</h1> 
    <h2>1. Service</h2> 
    <input type="text" name="pak[0][counter]" style="display:none" value="1"/> 
    <p>Name<input name="pak[0][name]" type="text" id="pakName0" class="pak"/></p> 
    <p>Count<input name="pak[0][count]" type="text" id="pakCount0" class="pak"/></p> 
    <p>Price<input name="pak[0][Price]" type="text" id="pakPrice0" class="pak"/></p> 
    <input type="button" onclick="addInput()" name="add" value="Add another service" /> 
    <p><input type="submit" name="submit" value="Submit" /></p> 
</form> 
<script language="javascript"> 
    fields = 0; 
    function addInput() { 
    fields += 1; 
    document.getElementById('rekins').innerHTML += 
      "<h2>"+(fields+1)+". service</h2>"+ 
      "<input type='text' name='pak["+fields+"][counter]' style='display:none' value='"+(fields+1)+"'/>"+ 
      "<p>Name<input name='pak["+fields+"][name]' type='text' id='pakName"+fields+"' class='pak'/></p>"+ 
      "<p>Count<input name='pak["+fields+"][count]' type='text' id='pakCount"+fields+"' class='pak'/></p>"+ 
      "<p>Price<input name='pak["+fields+"][Price]' type='text' id='pakPrice"+fields+"' class='pak'/></p>"; 
    } 
</script> 

나는 var_dump($_POST['pak']);과 디버깅을 시도하고 기본값이 표시되었다가 아니라 동적으로 추가 된 것.

무슨 문제 일 수 있습니까?

+0

당신이 IE 브라우저를 통해 코드를 테스트하고 있습니까? 다른 브라우저 (예 : mozilla – Sage

+0

)를 사용해 봅니다. Chrome과 Firefox에서 모두 동일한 결과가 나타났습니다 ... –

+0

다음에'$ _POST' 인쇄 코드를 확인하십시오. 파이어 폭스와 크롬에서 코드를 테스트 했으므로 이제는 괜찮습니다. – Sage

답변

0

나는 저를 위해 노력했습니다.

html로 측 :

<!doctype html> 
    <html lang="en"> 
    <head> 
     <meta charset="UTF-8"> 
     <title>Document</title> 
    </head> 
    <body> 
     <form action="x.php" method="POST" id="rekins"> 
     <p>Invoice Number: <input type="text" name="nr" /></p> 
     <p>Account: <input type="text" name="konts" /></p> 
     <h1>Services:</h1> 
     <h2>1. Service</h2> 
     <input type="text" name="pak[0][counter]" style="display:none" value="1"/> 
     <p>Name<input name="pak[0][name]" type="text" id="pakName0" class="pak"/></p> 
     <p>Count<input name="pak[0][count]" type="text" id="pakCount0" class="pak"/></p> 
     <p>Price<input name="pak[0][Price]" type="text" id="pakPrice0" class="pak"/></p> 
     <input type="button" onclick="addInput()" name="add" value="Add another service" /> 
     <p><input type="submit" name="submit" value="Submit" /></p> 
    </form> 
    <script language="javascript"> 
     fields = 0; 
     function addInput() { 
     fields += 1; 
     document.getElementById('rekins').innerHTML += 
       "<h2>"+(fields+1)+". service</h2>"+ 
       "<input type='text' name='pak["+fields+"][counter]' style='display:none' value='"+(fields+1)+"'/>"+ 
       "<p>Name<input name='pak["+fields+"][name]' type='text' id='pakName"+fields+"' class='pak'/></p>"+ 
       "<p>Count<input name='pak["+fields+"][count]' type='text' id='pakCount"+fields+"' class='pak'/></p>"+ 
       "<p>Price<input name='pak["+fields+"][Price]' type='text' id='pakPrice"+fields+"' class='pak'/></p>"; 
     } 
    </script> 
    </body> 
    </html> 

빌 측 :

<?php 
print_r($_POST['pak']); 
?> 

결과 :

Array ([0] => Array ([counter] => 1 [name] => [count] => [Price] =>) [1] => Array ([counter] => 2 [name] => asd [count] => asd [Price] => asd)) 
+0

그래, 이제 작동합니다. 솔직히, 나는 그것이 전에 어떤 구문 에러인지 모른다. 어쨌든 고마워! :) –

관련 문제