개발 Q&A

제목 model에서 db값을 불어온게 제대로 불러왓는지 확인하는 방법?
카테고리 PHP
글쓴이 뗘기 작성시각 2018/02/07 12:06:38
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 1145   RSS

안녕하세요.

처음으로 글쓰네요.

기존에 자바프로그래머로 있다가 이직을 하면서 이번에 처음으로 php 개발에 일하게 되었는데

mvc 코드이그나이터라는 것이더군요.

아무리 검색해 봐도 제가 사용하는 환경에서 확인하는방법을 찾지못해 질문올려봅니다.

개발은 중국개발자가 erp라고 개발해놓은것을 제가 수정,개발하려고 합니다.

일단 개발툴은 sublimtext2이구요. php mvc형태, 웹으로 erp가 개발되어져있고,db는 오라클, html5, 스크립트, ajax 등등 사용된것같습니다.

문제는 기존에 있던 화면기능을 소스를 그래도 복사해와서 출력되는 내용을 다른 db테이블의 내용으로 출력하려고하는데 잘되지 않네요.

자바는 에러문구나 문제되는곳을 표기해 주어서 편했는데.. 이건 sublime이 그런기능이 없는거같더군요..

다른 에디터를 쓰려고 해도 기존에 사용하는 개발환경이 아니면 에러가 날수도 있다고해서 쉽사리 바꾸지도 못하고 있습니다.

설명은 여기까지 하고 주요지는 model에서 불러오는 function의 내용 db가 잘 가져오는지를 확인하는방법을 모르겠습니다...

자바에선 system.out.print명령어로 하나씩노가다하면서 확인이라도 했는데 이건 view에서만 alert명령어가 먹히고 model에선 안되더라구요.. 기본개념이 없어서 그런것도 있지만..

혹시 화면으로 확인가능한 방법이 있다면 조언부탁드립니다.

 

 

model에 작성한 코드 첨부합니다~!

public function gets_QueryMain( $aa_config ){

$i_item_code = $this->input->post( 'item_code' );

$s_searchWhere = $this->getWhereBySerchFilter() ;

if ( !isset($i_item_code) || $i_item_code == "" ) $i_item_code = "" ;

$s_SQL =

 

" SELECT 0 ID, SA008M.ITEM_CODE, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '01', SA008M.ISS_ACTL_QTY, 0)) AS JAN, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '02', SA008M.ISS_ACTL_QTY, 0)) AS FEB, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '03', SA008M.ISS_ACTL_QTY, 0)) AS MAR, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '04', SA008M.ISS_ACTL_QTY, 0)) AS APR, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '05', SA008M.ISS_ACTL_QTY, 0)) AS MAY, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '06', SA008M.ISS_ACTL_QTY, 0)) AS JUN, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '07', SA008M.ISS_ACTL_QTY, 0)) AS JUL, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '08', SA008M.ISS_ACTL_QTY, 0)) AS AUG, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '09', SA008M.ISS_ACTL_QTY, 0)) AS SEP, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '10', SA008M.ISS_ACTL_QTY, 0)) AS OCT, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '11', SA008M.ISS_ACTL_QTY, 0)) AS NOV, ".

" sum(DECODE(substr(SA008M.ISS_DT_LAST,5,2), '12', SA008M.ISS_ACTL_QTY, 0)) AS DEB, ".

" sum(ISS_ACTL_QTY) AS TOTAL ".

" FROM SA008M GROUP BY SA008M.ITEM_CODE ";

if ( isset($s_searchWhere) && $s_searchWhere != "" ) {

$s_SQL = "SELECT * FROM (" .$s_SQL. ") C_BASE " . $s_searchWhere ;

}

 

if ( isset($s_searchWhere) && $s_searchWhere != "" ) {

$aa_SQL['count'] = "SELECT count(*) as CNT FROM (" . $s_SQL . ") BASE " ;

} else {

$aa_SQL_CNT =

"SELECT count(*) as CNT FROM SA008M group by ITEM_CODE ";

$aa_SQL['count'] = $aa_SQL_CNT;

}

 

$aa_SQL['list'] = $s_SQL .

"ORDER BY ".$aa_config['s_order']." ";

 

return $this->queryResponseUi_list( $aa_SQL, $aa_config );

}

 다음글 선배님들은 소스 파일당 몇줄 정도 되시나요? (4)
 이전글 phpstorm / 서버개발환경에서 변경된점 적용시키기... (4)

댓글

변종원(웅파) / 2018/02/07 13:36:34 / 추천 0

함수 리턴전에 또는 리턴 받은 데이터를 출력해보시면 됩니다. 

 

var_dump($this->queryResponseUi_list( $aa_SQL, $aa_config ));  or print_r($this->queryResponseUi_list( $aa_SQL, $aa_config ));  해보시면

db에서 가져온 내용을 화면에 출력해서 확인할 수 있습니다.

한대승(불의회상) / 2018/02/07 14:15:13 / 추천 0

sublime이 맘에 안드시면 익숙한 넷빈즈나 이클립스PDT로 바꾸셔도 됩니다.

돈 좀 들이셔도 된다면 phpstorm을 추천합니다.

뗘기 / 2018/02/07 15:24:33 / 추천 0

조언감사합니다.

var_dump($this->queryResponseUi_list( $aa_SQL, $aa_config ));  or print_r($this->queryResponseUi_list( $aa_SQL, $aa_config )); 

이걸로 적용시켜봤는데 변화가 없는데 .. echo 를 쓴것처럼 화면에 뜨는건가요? 아니면 alert형태로 뜨게 되나요?

 

변종원(웅파) / 2018/02/07 15:39:45 / 추천 0

화면 출력입니다. 그리고 php 함수들은 php.net 에서 검색해보세요.

그리고 개발자는 에러메세지로 물어보셔야 합니다. 잘되지 않는다 <- 뭐가 어떻게 안되는지 구체적이지 않습니다.

화면에 출력이 되는데 빈값인지, 화면이 하얗게 나오는 것인지 등등 현상을 알려주세요.

kaido / 2018/02/07 17:33:47 / 추천 0

코드만 얼핏 보아도 무늬만 CI를 사용한티가 납니다 

기존에 개발한 사람이  억지로 CI에 넣은티가 나는걸 보니... 소스 정리가 쉽지 않으실걸로 보입니다 ㅠㅠ

 

쿼리로 생기는 문제는   echo 로 찍어서 직접 쿼리실행기에 넣고 확인 하시는게 더 빠릅니다.

간단한 문법 오류가 아닌 이상 어차피 쿼리 한번 실행해서 오류 메세지를 보셔야합니다.

 

return 전에

print_r($aa_SQL);

exit; //강제로 밑에는 실행 중단  php 함수 

이렇게 하신다음에 해당 쿼리문들 한번 쿼리편집기에 실행해보시고, 문제가 없다면 사용자가 정의한 함수 문제입니다.