sql exception 처리

sql exception 처리

QA

sql exception 처리

답변 1

본문


try {
  $res = sql_fetch("SELEfCT * FROM category where category_id = 1234) ; 
  $res['status'] = 'ok';
}
catch(Exception $e) {
   $res['status'] = $e->getMessage();
}
echo json_encode($res);

 

에러처리를 하고 싶은데, 일부러 select --> selecfct 문법 오류를 내었는데

 

try catch 가 안되고, 오류가 나네요..

에러처리를 하고 오류메시지를 보이고 싶은데 어떻게 하나요

이 질문에 댓글 쓰기 :

답변 1

위 문장에서 조건에 해당되는 내용이 없는경우에는

$res에는 null 이 존재하게 됩니다.

그런경우에

$res['status'] 에 강제로 값을 대입하면

Exception 자체도 오류가 날겁니다.

 

값이 존재하는지 

is_array() 으로 배열인지 체크하신후에

대입하실지

선언후 대입하실지 정하셔야 할것 같습니다.

 

* 배열인지 체크

   is_array() : http://php.net/manual/kr/function.is-array.php

 

* 배열의값이 있는지 체크

   in_array() : http://php.net/manual/kr/function.in-array.php

try
{
    $res = sql_fetch("SELEfCT * FROM category where category_id = 1234;

}
catch(Exception $e)
{
 
}

echo json_encode($res);

이렇게 바꿨습니다.. 에러가 sql에서 나는걸 catch 하고 싶은데 그게 catch가 안되고 그냥 에러가 나요

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 125,873
© SIRSOFT
현재 페이지 제일 처음으로