테스트 사이트 - 개발 중인 베타 버전입니다

function_exists('mysqli_connect') 값이 false가 나오는 이유가 뭘까요? 채택완료

프로그래머7 9년 전 조회 8,559

lib/common.lib.php파일에서   1416 째줄 입니다

영카트 버전 : 최신버전입니다

 

질문) 분명 mysqli_connect 함수가 존재할텐데 

 function_exists('mysqli_connect') 값이 false가 나오는 이유가 뭘까요?


결국 아래 순으로 에러가 발생합니다.

1. function_exists('mysqli_connect') 값이 false(G5_MYSQLI_USE는  true)로 인식이 되어서

2. 결국 else 문으로 들어가서         

3. $link = mysql_connect($host, $user, $pass); 로 들어감

4. 결국 Fatal error: Call to undefined function mysql_connect() in C:\Apache24\htdocs\test\public_html\lib\common.lib.php on line 1428

=========================(해당 소스) ==================================

function sql_connect($host, $user, $pass, $db=G5_MYSQL_DB)

{

    global $g5;

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

        $link = mysqli_connect($host, $user, $pass, $db);

 

        // 연결 오류 발생 시 스크립트 종료

        if (mysqli_connect_errno()) {

            die('Connect Error: '.mysqli_connect_error());

        }

    } else {

        $link = mysql_connect($host, $user, $pass);

    }

 

    return $link;

}

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
9년 전

test 파일 만들어서 echo function_exists('mysqli_connect'); 이것만 해보세요. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

프로그래머7
9년 전
test 파일을 위 파일과 같은 경로에( 저 함수가 인클루드 된채로) 만들라는 말씀인가요?
그러면 같은 결과가 나올텐데요...
프로그래머7
9년 전
혹시 별이님은 function_exists('mysqli_connect') 값이 true 로 나오나요? 저 파일에서요
그게 궁금합니다.

댓글을 작성하려면 로그인이 필요합니다.

9년 전

저는 잘 나옵니다.

함수에 대한 건 파일이랑 상관없어요..

phpinfo();

출력하셔서 mysqli 검색해보세요. 검색 안되면 설치 자체가 안되어 있는 겁니다. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

프로그래머7
9년 전
해당 항목이 아래처럼 잘 출력되거든요...
MySQL Zeev Suraski, Zak Greant, Georg Richter, Andrey Hristov
MySQLi Zak Greant, Georg Richter, Andrey Hristov, Ulf Wendel


PHP Version 5.6.22
Apache Version Apache/2.4.20 (Win64) PHP/5.6.22

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인