foreach문이 돌때마다 정보가 바뀌었으면 좋겠어요.
본문
안녕하세요 질문이 있어서 글을 올려 봅니다.
제가 지금 아래와 같이 만들었는데요, foreach문이 돌때마다 $daily[$i]; 이 매번 달라 졌으면 좋겠는데 지금은 계속 동일하게 나옵니다. controller쪽을 여러번 바꿔보고 있는데 마땅히 좋은 방법이 떠오르지 않아 질문글 올려 봅니다. 감사합니다~~
view
<?php
foreach ($posting as $detail) {
if ($detail->posting_type == 0) {
?>
<tr>
<input type="hidden" name="posting_type[]" value="0">
<td><input type="hidden" name="report_day[]" value="<?=$detail->report_day?>"><?=$detail->report_day?>일</td>
<td><input type="hidden" name="hospital_id[]" value="<?=$detail->hospital_id?>"><?=$detail->hosp_name?></td>
<td name="last_month"><input type="hidden" name="last_month[]" value="<?=$detail->last_month?>"><?=$detail->last_month?>개</td>
<td name="total"><input type="hidden" name="total" value="<?=$detail->total?>"><?=$detail->total?>개</td>
<? for($i=0;$i<$maxDay;$i++){ ?>
<td name="posting_day"><?php echo $daily[$i]; ?>
</td>
<? } ?>
<td name="last_month"><?=$detail->last_month?>개</td>
</tr>
<?php
} //if
} //foreach
?>
controller
$arr = array();
for($i=0; $i<5; $i++){
$arr[$i] = rand(1, $maxDay);
$nalja9 = "$thisY-$thisM-$arr[$i]";
$yoeil = date('w' , strtotime($nalja9) );
if($yoeil==0||$yoeil==6){
// print_r(' 주말 ');
$i--;
continue;
}
for($j=0; $j<$i; $j++)
{
if($arr[$i] == $arr[$j])
{
$i--;
break;
}
}
}
sort($arr);
$result=array();
for($day=1; $day<=$maxDay;$day++){
if(in_array($day, $arr)){
array_push($result, "1");
} else {
array_push($result, "");
}
}
$data['daily'] = $result;
$this->load->view('posting',$data);
답변 1
view 에서 $daily값 선언이 보이지 않고
controller 쪽에서 $data 에 배열선언이 보이지 않네요
1. 컨트롤러 $data변수 확인 (제대로 들어가있는지 확인)
2. array_push 로 daily 를 넣었으면 view 에서도 $detail-> daily 형태로 뿌려주기
순서대로 디버깅 해보시기 바랍니다
답변을 작성하시기 전에 로그인 해주세요.