mysql 쿼리결과중 Empty set 은 php에서 어떻게 저장되죠?
본문
$sql = " select * from g5_member where mb_id = 'test' ";
$result = sql_query($sql, FALSE);
if($result) {
echo "해당 ID 존재";
} else {
echo "해당 ID 없음";
}
실제 g5_member 테이블에 test라는 계정이 없는 상태에서
위 쿼리를 실행시키면 "해당 ID 존재" 가 출력이 되더라구요.
그래서 echo $result 로 어떤 값이 출력되나 확인해보니
출력화면이 전부 하얗고 소스검사를 해봐도 아무것도 없습니다.
실제 서버에서 mysql 접속해서 위 쿼리문을 실행시켜보니
Empty set 이라는 결과가 나오던데요.
쿼리 결과가 Empty set 일 때 sql_query() 함수는 어떤 값을 반환하는거죠?
어떤 값을 반환하길래 출력화면이 아무것도 안나오는거죠?
그리고 sql_query() 는 쿼리가 에러 나야지만 0값을 반환하는건가요?
답변 3
Empty set 이란 내용이 나왔다면
즉 $result 값이 false로 떨어진겁니다.!
// 이렇게 구현해야 맞을꺼 같네요 ^^
if(!$result) {
echo "해당 ID 존재";
} else {
echo "해당 ID 없음";
}
!-->if($result) {
바꿔요
if($result[mb_id]) {
common.lib.php 에서 sql_query 함수를 찾아보면
결국 php mysql_query를 호출하고 리턴합니다.
결국 return 되는 결과값은 다양하게 나올 수 있어요..
답변을 작성하시기 전에 로그인 해주세요.