2011-05-06 2 views
2

여러 개의 가상 필드 세트가 포함 된 양식이 있습니다.PHP에서 단일 양식의 공통 필드 세트를 반복 할 수 있습니까?

예, MyForm을 :

Name1 
Age1 
Location1 

Name2 
Age2 
Location2 

Name3 
Age3 
Location3 

Submit 

나는 사용자가 동적으로 클라이언트에 대한 자세한 필드 세트를 만들 수 있다면 내가 어떻게 이름 (x)를 설정하고 각각에 대해 유사한 작업을 수행 모든 필드 셋을 반복 그룹, 정수 (1,2,3 등)를 고유 한 식별자로 사용 하시겠습니까?

조치를 한 번만 지정하고 반복 할 때마다 필드 세트의 번호에 따라 변수를 변경합니다.

는 지금, 나는 3 하드 코딩 fireldsets에 대해 수동으로 그 일을하고 있지만, 확장되지 않습니다

의사 코드 :

if($name1 is set) { 
do something using $age1 and $location1 
} 
if($name2 is set) { 
do something using $age2 and $location2 
} 
if($name3 is set) { 
do something using $age3 and $location3 
} 

감사합니다!

답변

1

이처럼 수행이 도움이

$maxIndex = 3 

    for(var $i=1; $i<=$maxIndex; $i++){ 
     $name = $_POST["Name$i"]; 
     $age = $_POST["Age$i"]; 
     $location = $_POST["Location$i"]; 
     //do something using $name, $age and $location 
    } 

희망을. 건배

+0

고마워요. 이런 변수 이름에 $ i를 사용할 수 있습니까? 내 테스트에서 작동하지 않습니다. – Dan

+0

D' oh - 작은 따옴표. 이 솔루션은 내 JS가 클라이언트 측에서 어떻게 설정되었는지에 대한 다른 고려 사항을 기반으로 나를 위해 일했습니다. – Dan

0

입력 필드에 배열을 사용해야합니다. 그런 다음 블록의 수를 만들 수 있습니다 PHP에서

<input name="name[]" /> 
<input name="age[]" /> 
<input name="location[]" /> 

을 이러한 매개 변수를 통해 루프 수 :

foreach($_POST['name'] as $key => $value) { 
    $name = $_POST['name'][$key]; 
    $age = $_POST['age'][$key]; 
    $location = $_POST['location'][$key]; 
} 
3

당신은 당신의 요소 name="name[1]", name="name[2]" 등의 이름을 지정할 수 있습니다.

및 PHP에서

같은 것을 할 : 당신은 행동 양식에

<?php 
//n is no of records u want at one time 
$available = $n; 

for($i=1; $i<=$available; $i++){ 
?> 

Name <input type=hidden name="pname<?=$i?>" value=<?=$pid?>> 

Age<input type=text name="age<?=$i?>" /> 
Location<input type=text name="age<?=$i?>" /> 
<?php 


} 
?> 

을 사용할 수 있습니다 당신은 fome의에서 처음으로

을 만들기위한 PHP에서 배열을 사용할 수 있습니다

for($i=1;$i<=count($name);$i++){ 
// do the stuff. 
} 
0

당신 한 번에 이러한 여러 recordes을 저장하는 데 사용할 수있는

<?php 
$available_count = $n; 

for($i=1; $i<=$available_count; $i++){ 
     $pname = "pname".$i; 
     $age = "age".$i; 
     $location = "location".$i; 


     $pname1 = trim($_POST[$pname]); 
     $age1 = trim($_POST[$pname]); 
     $location1 = trim($_POST[$location]); 
    //now you can insert these values into table/views 

    } 
    ?> 

당신은 더 나은 도움을 찾을 수 있기를 바랍니다.

관련 문제