CI 묻고 답하기

제목 CI 3.0 에서 Controller 초기화면에 DB 데이터 불러오기
글쓴이 옴므파탈 작성시각 2015/04/23 15:43:30
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 19746   RSS
<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Booking extends CI_Controller {
	public function __construct() {
        parent::__construct();
        // $this->load->model('booking_model'); >> 동일에러 발생
    }
	public function _remap($method) {
		$view = '/booking/'.$method;
		$data['view'] = $view;

		$this->load->view('header');
		/*
		 |------------------------------------------------------
		 | View 와 같은 이름의 Method 가 존재하면
		 | Method 를 우선 호출 하도록 함 
		 |------------------------------------------------------
		 */
		if(method_exists($this, $method)) {
			$this->$method($view, $data);
		} else {
			$this->load->view($view, $data);
		}
	}
	public function index() {
		$data['list'] = $this->get_list(); 
		$this->load->view('/booking/list', $data);
	}
	public function get_list() {
		$this->load->model('booking_model');
		$result = $this->booking_model->gets();
		return $result;
	}
	/*
	 |------------------------------------------------------
	 | DESCRIPTION :
	 | 작성한 데이터를 기준으로 새로운 아이템을 저장합니다.
	 |------------------------------------------------------
	 */
	public function insert() {
		echo '신청완료 되었습니다';
		echo '<p><a href="/booking/list">돌아가기</a></p>';
	}
}

example.com/booking 에서 컨트롤러의 초기화면을 불러오고자 할때 
DB에 있는 데이터의 목록을 넘겨주어 출력하고자 합니다. 

booking_model 을 통해서 DB 데이터를 넘겨받기 위해 
위와같이 시도하고 있는데, 
Proxy Error 가 나타나네요 

-------------------------------------------------------------------------------------
Proxy Error

The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request GET /booking.

Reason: Error reading from remote server
-------------------------------------------------------------------------------------

위에서 제가 놓치고 있는 문제는 무엇일까요??
작은 조언 부탁드립니다. 

 다음글 [CI 3.0] input data를 받아오지 못하는 ... (3)
 이전글 ci session 크롬에서는 해제가 되는데 익스플러스... (3)

댓글

옴므파탈 / 2015/04/23 15:50:47 / 추천 0
음.. model 쪽이 문제인가라는 생각에 .. model쪽의 method 들을 모두 주석처리하고 model을 불러오니, 프록시에러가 나타나지 않네요.. DB 설정이나, 뭔가 다른문제가 있는것 같습니다. 
변종원(웅파) / 2015/04/23 16:02:48 / 추천 0
그 db 설정으로 php 파일에서 접속되는지 체크해보세요.
옴므파탈 / 2015/04/23 16:53:01 / 추천 0
test controller 를 만들어 
다음과 같이 테스트를 했습니다
 
<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Test extends CI_Controller {
 public function index() {
  $link = mysql_connect('localhost', 'user', 'password');
  if ($link) echo "connect!";
 }
}
= 결과는 
connect! 가 출력이 됩니다.
그런데,
db query 가 포함된 model 을 load 하면 계속 proxy error 가 발생하네요.... 
영문을 모르겠습니다. ㄷㄷ 
옴므파탈 / 2015/04/23 17:21:29 / 추천 0
자문자답입니다. 

결국 문제는 오타네요...
join 문에 ,(쉼표)가 빠지니 error 가 발생했었습니다. 

우리모두 오타에 주의합시다 ㅠㅠ
한대승(불의회상) / 2015/04/23 17:40:31 / 추천 0
@옴므파탈 고생 하셨습니다. ^^
사소한 것들이 우리를 피곤하게 만드네요.