2011-03-04 2 views
0

하나를 체크하면 잘 작동하는 체크 박스 그룹이 있는데, 모두 체크하지 않으면 에러가 반환됩니다.체크 박스 그룹에 체크 표시가되어 있지 않으면 에러가 반환됩니다.

Warning: Invalid argument supplied for foreach() in 
/home/medicom/public_html/memberappform1.php on line 492 

내가 그렇게 루프 경우에 아무것도 돌려주지 않는 방법이 필요 PHP로 큰 아니에요 :

foreach ($_SESSION['CheckboxGroup1'] as $val) { 
$checkbox1results .= $val.",\n"; 
} 

이 내가 다시지고있어 오류가 있습니다 : 여기

코드입니다 아무 것도 틱하지 않습니다. 당신이 당신의 가치를 확인하기는 is_array() 함수를 사용할 수 있도록

답변

2
if(is_array($_SESSION['CheckboxGroup1'])){ 
    foreach ($_SESSION['CheckboxGroup1'] as $val) { 
     $checkbox1results .= $val.",\n"; 
    } 
} 
1
if(isset($_SESSION['CheckboxGroup1'])){  // add && is_array($_SESSION['CheckboxGroup1']) to check its an array or not 
    foreach ($_SESSION['CheckboxGroup1'] as $val) { 
    $checkbox1results .= $val.",\n"; 
    } 
} 
0

시도는, 배열을 내부 : 대부분의 경우 값이 설정되어 무엇을보고() 세션을 위해서 var_dump 있지만합니다

0

if(isset($_SESSION['CheckboxGroup1'])){ 
    foreach ($_SESSION['CheckboxGroup1'] as $val) { 
    $checkbox1results .= $val.",\n"; 
    } 
} 
0

하는 당신은 체크 박스는 isset 빈 체크 박스 포스트 값을 해달라고하기 때문에 있는지 확인해야 ... 사용

,
-1

if 문을 사용하여 유효성을 검사합니까?

foreach ($_SESSION['CheckboxGroup1'] as $val) { 
if ($val !==""){ 
$checkbox1results .= $val.",\n"; 
} else { 
echo "Please tick an option"; 
} 
+0

-1 (여전히 오류가 발생하고 'CheckboxGroup1'은 설정되지 않았 음/루프 할 배열이 아님) 그래서 그가 피 하려던 오류가 여전히 나타납니다. –