개발하면서 db쪽 에러를 보고싶습니다

개발하면서 db쪽 에러를 보고싶습니다

QA

개발하면서 db쪽 에러를 보고싶습니다

본문

config.php에서 

 

define('G5_DISPLAY_SQL_ERROR', TRUE); 로 설정을 했습니다

 

그다음 적용이 안되서 디버거로 한줄씩 타는데

 

function sql_query($sql, $error=G5_DISPLAY_SQL_ERROR, $link=null){...}에서

 

G5_DISPLAY_SQL_ERROR는 분명히 true인데

 

$error에 true가 할당이 안되더라구요 이게 뭔일이죠..? php 7.4 사용중입니다

이 질문에 댓글 쓰기 :

답변 1

lib/common.lib.php에서 

function sql_query($sql, $error=G5_DISPLAY_SQL_ERROR, $link=null)
{

...

if(function_exists('mysqli_query') && G5_MYSQLI_USE) {

    if ($error) {

            $result = @mysqli_query($link, $sql) or die("<p>$sql<p>" . mysqli_errno($link) . " : " .  mysqli_error($link) . "<p>error file : {$_SERVER['SCRIPT_NAME']}");
        } else {
            $result = @mysqli_query($link, $sql);
        }
    } else {
        if ($error) {
            $result = _query($sql, $link) or die("<p>$sql<p>" . mysql_errno() . " : " .  mysql_error() . "<p>error file : {$_SERVER['SCRIPT_NAME']}");
        } else {
            $result = _query($sql, $link);
        }
    }

위 코드로 보아 문제 없어 보입니다.

가끔 <script, <select 등등 특이한 태그 안에서 sql 실행시 브라우저에서는 안 보이고

소스 보기"로 해서 보이는 경우가 있습니다.

 

제가 확인해보니까 function sql_query($sql, $error=G5_DISPLAY_SQL_ERROR, $link=null){...}
에서 $error에 false가 자꾸 할당되는 문제였는데 함수 호출할때 sql_query("sql...", fasel)를 명시적으로 줘서 당연히 false였습니다. 감사합니다

답변을 작성하시기 전에 로그인 해주세요.
전체 8,731
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT