2017-04-18 2 views
1

codeigniter에서 값 배열을 가져 오는 방법은 무엇입니까? 값 배열을 가져오고 값을 반향 출력 할 때 문제가 있습니다. 제출할 때 게시 가치를 표시하는 방법은 무엇입니까? 여기에 오류 메시지 :codeigniter에서 값 배열을 가져 오는 방법은 무엇입니까?

A PHP Error was encountered 

Severity: Notice 

Message: Uninitialized string offset: 0 

Filename: controllers/blablabla 

보기 HTML :

<?php $i=0; foreach ($doc as $row) { ?> 
<label> 
<input name="size[<?php echo $i; ?>]" type="checkbox" value="<?php echo $row['doc']; ?>">&nbsp;&nbsp;<?php echo $row['doc']; ?> 
</label> 
<?php $i++; } ?> 

컨트롤러 :

$size = $this->input->post('size'); 
for ($i=0; $i<count($doc); $i++) 
{ 
    echo $size[$i]; 
} 
+1

다음을 수행하십시오. $ arr = $ this-> input-> post(); print_r ($ arr); 그리고 당신이지고 있는지 확인하십시오. 그렇습니다. 단지 값이 올 것입니다. – rahulsm

+0

@rahul_m 제안한대로 해보십시오. 그냥 하얀 스크린을 보여주십시오. –

+0

당신은 죽지 않았습니까(); 출구; ? print_r과 명백한 후에 폼을 올리고 폼을 올리기 위해 같은 함수를 사용한다면 폼을 게시 한 후에 올 것이다. – rahulsm

답변

3

변경,

<?php foreach ($doc as $row) { ?> 
<label> 
    <input name="size[]" type="checkbox" value="<?php echo $row['doc']; ? 
    >">&nbsp;&nbsp;<?php echo $row['doc']; ?> 
</label> 
<?php } ?> 

그리고 포스트 방법

,

$size_arr = $this->input->post('size'); 
foreach($size_arr as $v){ 
    echo $v; 
} 

경우는, 함께

을 확인 한 후 작동하지 않는 몇 가지 이유
$size_arr = $_POST['size']; 
foreach($size_arr as $v){ 
    echo $v; 
} 

편집

또 하나 개의 대안,

$arr = $this->input->post(); 
$size_arr = $arr['size']; 
foreach($size_arr as $v){ 
    echo $v; 
} 

코어 버전,

$arr = $_POST; 
$size_arr = $arr['size']; 
foreach($size_arr as $v){ 
    echo $v; 
} 
+0

그게 전부가 여전히 작동하지 foreach는()에 대한 공급 잘못된 인수, 나는 PHP 오류가 심각도를 발생했습니다이 메시지를 받았습니다 : 경고 메시지 : foreach()에 잘못된 인수가 제공되었습니다. –

+0

내 편집 섹션을 확인하십시오. 여전히 작동하지 않으면 print_r ($ arr)을 게시하고 여기를 살펴보십시오. – rahulsm

+0

더 많은 오류 메시지가 표시됩니다. PHP 오류가 발생했습니다. 심각도 : 알림 메시지 : 정의되지 않은 변수 : 크기 –

1

귀하의 HTML 양식 코드는 다음과 같이해야한다.

<input name="size[<?php echo $i; ?>]" type="checkbox" value="<?php echo $row['doc']; ?>"> 

내부 컨트롤러 코드는 다음과 같아야합니다. 기록 확인란의 길 이름을 다음과 같이

$size = $this->input->post('size'); 
foreach($size as $sa) 
{ 
    echo $sa; 
} 
+0

Wykar : 경고 메시지 : 작동하지 이잖아, 내가 PHP 오류가 심각도가 발생 된 오류 메시지를 받았습니다 –

2

단지 배열을

보기 파일을보기 파일에 체크 박스 이름을 $ 내가 사용할 필요가 없습니다

<?php foreach ($doc as $row) { ?> 
<label> 
<input name="size[]" type="checkbox" value="<?php echo $row['doc']; ?>">&nbsp;&nbsp;<?php echo $row['doc']; ?> 
</label> 
<?php } ?> 

컨트롤러

$countsize = count($this->input->post('size')); 
for ($i=0; $i<$countsize ; $i++) 
{ 
    echo $this->input->post('size')[$i]; 
} 
관련 문제