2011-08-17 2 views
1

안녕하세요. codeigniter를 사용하고 있습니다. 내가 양식을 가지고, 거기에 동적으로 숨겨진 필드를 추가합니다. 그래서 모든 숨겨진 필드는 <input type='hidden' name='hidden' value="+$(this).attr('title')+">이므로 이름이 동일합니다. 이름이 동일하기 때문에 내가 양식을 제출하고 내 숨겨진 필드 값을 얻으려고 내가 하나 개의 숨겨진 필드 값을 얻을 수있을 때codeigniter에서 이름이 아닌 양식 값을 가져옵니다.

문제는

난 내 양식이

print_r($this->input->post()); 

값 인쇄 난 2 개 숨겨진 필드가하지만 난 만들 때 하나의

Array 
(
    [hidden] => march 
    [textbox] => march 
    [mysubmit] => Submit 
) 

내가 숨겨진 필드 동적으로 이름을 변경할 수 있습니다 얻을,하지만 난 정확히 내 숨겨진 필드의 이름을 모르는 ,

어떻게 같은 이름의 숨겨진 필드 값을 얻을 수 있습니까 ?? 거기에 이름으로 이외의 양식 값을 얻을 수있는 방법은 무엇입니까 ??

<input type='hidden' name='hidden[]'> 
<!--       ^^^^         --> 

이 허용됩니다 : 나는

에게 당신은 당신의 name 속성에 괄호를 사용해야합니다

답변

3

이 ............. 시도하고 답변이 도움을 주시기 바랍니다 찾을 수 없습니다 PHP는 값의 배열과 같은 이름의 다중 입력을 허용하므로이 경우 $_POST['hidden']은 문자열 배열을 반환합니다.

기본적으로 인덱스는 0부터 시작하므로 $_POST['hidden'][0]은 첫 번째 인덱스를 얻습니다. $_POST['hidden'][1]은 두 번째 인덱스 등을 얻을 수 있습니다. 숫자 나 문자열을 사용하면 더 쉽게 색인을 생성 할 수 있습니다. .

<input type='hidden' name='hidden[first]'> 
<input type='hidden' name='hidden[second]'> 

또는 :

<input type='hidden' name='hidden[0]'> 
<input type='hidden' name='hidden[1]'> 

중첩 할 수 있습니다 당신이 hidden[first][1][] 같이 원하고, 당신이 $_POST 값을 얻을 때 그들이 PHP 배열과 유사하게 취급됩니다,하지만 당신은 브래킷을 필요로하는 이들과 같은 깊은 HTML에서.

대괄호가 없으면 마지막 필드 값만 $_POST 배열에서 사용할 수 있습니다. 이것은 PHP 기능입니다. Codeigniter는 그것에 대해 아무 것도 할 수 없습니다.

+0

매우 고맙습니다. 문제가 해결되었습니다. D : D : D –