제목 | controller의 $data 변수 내용이 view에서 어떤건 나오거 어떤 건 Undefined variable 오류가 나네요. ㅠㅠ | ||
---|---|---|---|
글쓴이 | 담덕 | 작성시각 | 2016/06/02 10:57:12 |
|
|||
Controller
$data["theme_rank"] = $this->theme_model->get_item_rank(); $q_total_page = $this->signal_model->total_page(10); $q_rows = $this->signal_model->q_list(1, 10); $data["message_q"] = array("total_page" => $q_total_page, "rows" => $q_rows); $data["signals"] = $this->code_model->prod_div_list("40"); $this->load->view("pages/test", $data);
※ 모델에서 데이터 가져오는 확인했습니다.
View
<ul class="list-unstyled"> <?php foreach ($theme_rank as $rank): $item_code = $rank["item_code"]; $item_name = $rank["item_name"]; $cur_price = $rank["cur_price"]; $rate = $rank["item_rate"]; $item_div = $rank["item_div"]; $theme_name = $rank["prod_name"]; $transitiongoal = (100.0 * abs($rate)) / 30.0; $color = ""; if ($rate > 0) { $bar = "progress-bar-danger"; $color = "icomoon-icon-arrow-up-2 color-red"; } else if ($rate < 0) { $bar = "progress-bar-warning"; $color = "icomoon-icon-arrow-down-2 color-blue"; } $bar = ($rate > 0 ? "progress-bar-warning" : ($rate < 0 ? "progress-bar-info" : "progressbar") ); ?> <li> <span class="s24 <?=$color?>"></span> <?=$rate?>% <?=$item_name?> : <?=$theme_name?> <div class="progress progress-bar-sm"> <div class="progress-bar <?=$bar?>" role="progressbar" style="width: <?=$transitiongoal?>%;"></div> </div> </li> <?php endforeach ?> </ul> 여기까지는 잘 나옵니다.
<ul class="timeline timeline-icons" id="signals"> <? foreach ($message_q["rows"] as $message): ?> <? $url = ($message["url"] == "" ? "#" : $message["url"]); ?> <li> <p> <a href="<?=$url?>"><span style="color:<?=$message["message_color"]?>"><?=$message["message"]?></span></a> <span class="timeline-icon"><?=$message["icon"]?></span> <span class="timeline-date"><?=$message["reg_date"]?></span> </p> </li> <? endforeach ?> </ul> $url, $message 변수가 Undefined variable 오류 발생
<?foreach ($signals as $signal) :?> <?=$num?><?=$signal["code_data"]?>,<?=$signal["code_name"]?><br> <? $num++; endforeach ?> $signal 변수 Undefined variable 오류 발생... 원인을 알 수가 없네요. ㅠㅠ
|
|||
다음글 | node js와 CI (12) | ||
이전글 | 세션 sess_expire_on_close 같은 쿠키도... (2) | ||
kaido
/
2016/06/02 11:13:10 /
추천
0
|
담덕
/
2016/06/02 13:36:29 /
추천
0
원인을 알았습니다. -_- php 코드 시작할 때 <? 이게 아니라 <?php 이 걸루 다 교체하니까 문제없이 돌아갑니다. 이게 어떤 차이가 있는지 모르겠지만 어제부터 지금까지 삽질한 거 생각하면... -_- 어쨋든 해결되서 맘이 가벼워졌네요. ^^; |
변종원(웅파)
/
2016/06/02 13:38:29 /
추천
0
shot tag는 기본적으로 사용하지 않는 것이 좋습니다. php.ini의 기본설정이 숏태그 사용하지 못하도록 되어 있습니다. |
kaido
/
2016/06/02 13:39:01 /
추천
0
숏코드 설정을 안 하셨군요. 숏코드를 사용 하실 거면
config.php 에서 short_tag 부분에서 true php.ini 에서 short_tag_open = On 으로 변경.
숏태그를 사용 할 수 없는 환경이 될 수 있다는 가정을 하면 숏태그를 사용 안 하시는 것도 좋습니다. |
컨트롤러에서 $data['url'] = ''; //이런 아이가 있어야 합니다.
그게 아니면 isset 등으로 체크해 주세요.
오류 문장 대로 해당 변수가 없다는 의미입니다.
모델에서 데이터가 정말로 잘 넘어왔는지, 어떤 형태로 넘어 왔는지 다시 확인해 보셔야 합니다.
잠시 눈 좀 식히시고 천천히 다시 살펴보시면 이상한 점을 찾으실 것입니다.