sourcetip

php 오류는 정의되지 않은 mysqli_dll을 표시합니다.

fileupload 2023. 8. 1. 20:42
반응형

php 오류는 정의되지 않은 mysqli_dll을 표시합니다.

무엇이 문제인지 알 수 없습니다. /var/log/apache2/error_log에 표시됩니다.

PHP 치명적 오류: /srv/www/htdocs/platform/includes/functions의 정의되지 않은 함수 mysqli_query()를 호출합니다.397행의 php

OpenSUSE Leap에서 작동하도록 램프 스택을 구성하기 위해 엄청난 시간을 보냈습니다.어떤 도움이라도 주시면 대단히 감사하겠습니다.

저는 MariaDB, PHP: mysqlVer 15.1 Linux용 분산 10.0.28-MariaDB(x86_64) PHP 5.5.14 (cli)를 사용하고 있습니다.

관련 기능은 다음과 같습니다.

//functions.php
include('database.php');

function find_all_pages_index($user="guest"){
    $query = "SELECT p.pg_id,p.pg_name,p.name,u.usl_id ";
    $query .= "FROM pages as p,users as u ";
    $query .= "WHERE u.user_name=\"".strtolower($user)."\"";
    $result=mysqli_query(dbconnect(),$query) or die("Error in query"); //This is line 397

    if (mysqli_num_rows($result) > 0){
        // iterate through resultset
        // print title with links to edit and delete scripts
        echo "<ul class=\"nav navbar-nav\">";
        while($row = mysqli_fetch_row($result)){
            echo "<li";
            if (find_subjects_for_page2($row[0], $row[3]) == true){
                echo " class=\"dropdown\" >";
                echo "<a href=\"public/".  strtolower($row[1]).".php\" role=\"button\" aria-haspopup=\"true\""
            . " aria-expanded=\"false\">".$row[2]."<span class=\"caret\"></span></a>
                    <ul class=\"dropdown-menu\">";
                find_subjects_for_page($row[0],$row[3]);
            } else {
                echo ">";
                echo "<a href=\"public/".  strtolower($row[1]).".php\">";
                echo $row[2]."</a>";
            }
            echo "</li>";
            }
            echo "</ul>";
        }
}

//database.php

function dbconnect(){//function to connect to the database
    if (!defined("DB_HOST")){define("DB_HOST","localhost");}
    if (!defined("DB_USER")){define("DB_USER","platform");}
    if (!defined("DB_PWORD")){define("DB_PWORD","platform");}
    if (!defined("DB_NAME")){define("DB_NAME","platform");}
    $connection=mysqli_connect(DB_HOST,DB_USER,DB_PWORD,DB_NAME);
    if (mysqli_connect_errno()){//check if there is a connection error number
        //display error and error number if error number exists
        die ("Could not connect to database ".mysqli_connect_error()." (".mysqli_connect_errno().")");
    } else {//return connection handle if there is no error number
        return $connection;
    }     
}

function confirm_query($result,$query){
    if (!$result){//check if query was ok
        die ("Data upload failed: $query");
    }
}

저는 이 게시물을 확인하고 패키지를 설치하여 문제를 해결했습니다.php5-pear-MDB2_Driver_mysqliOpenSUSE 저장소에서 사용할 수 있습니다.MySQLi 드라이버가 없습니다.

언급URL : https://stackoverflow.com/questions/42090969/php-error-shows-undefined-mysqli-query

반응형