그누보드5 연동관련 질문드립니다.

그누보드5 연동관련 질문드립니다.

QA

그누보드5 연동관련 질문드립니다.

본문

안녕하세요

 

현재 그누보드5 php7 버전을 이용중입니다. 현재 큐패스라는 그누보드가 지원이 되어 연동을 하려고 진행중 이러한 Fatal error: Uncaught Error: Call to undefined function mysql_query() in /ykk007/www/qpass/qpass_install.php:13 Stack trace: #0 {main} thrown in /ykk007/www/qpass/qpass_install.php on line 13 오류구문이 나오기에 혼자서 여러 사이트에 검색을 해보았으며 제 생각에는 php7에서 지원이 안되는 명령어를 사용하여 이러한 오류가 발생하는 것 같아보입니다. 

하지만 제가 지식이 부족하여 어떤오류인지도 확실히 모르며 어떻게 해결 해야 될 지 많은 답변 부탁드립니다.

만약 지원이 안되는 명령어를 사용하여 오류가 발생했다면 php7 버전에서 사용 할 방법은 있을까요?

 

현재 php7 버전에서는 mysql_query, mysql_connect 함수 사용이 불가하며 mysqli_connect, mysqli_query 등으로 변경하여 이용이 가능 하다는걸 알아냈지만 수정을 어떻게 해야 될 지 잘 모르겠습니다.

이 질문에 댓글 쓰기 :

답변 4

아마도 설치하신 큐패스 mysql 가  mysql 4.x 버전대에서 개발한것으로 알고 있습니다.

아래 내용를 참고 하시기 바랍니다.


function sql_query($sql, $error=G5_DISPLAY_SQL_ERROR, $link=null)
{
    global $g5;
    if(!$link)
        $link = $g5['connect_db'];
    // Blind SQL Injection 취약점 해결
    $sql = trim($sql);
    // union의 사용을 허락하지 않습니다.
    //$sql = preg_replace("#^select.*from.*union.*#i", "select 1", $sql);
    $sql = preg_replace("#^select.*from.*[\s\(]+union[\s\)]+.*#i ", "select 1", $sql);
    // `information_schema` DB로의 접근을 허락하지 않습니다.
    $sql = preg_replace("#^select.*from.*where.*`?information_schema`?.*#i", "select 1", $sql);
    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);
        }
    }
    return $result;
}

 

그누보드 lib/common.lib.php 파일에 mysql_query 로 검색해보세요.

쿼리 관련 함수들이 있습니다. php5.3 및 7에서 잘돌아가게 코딩되어 있으니 참고해서

qpass 라는 프로그램을 쿼리 관련 부분 수정해 보세요.

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

회원로그인

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