IT

치명적 오류: 정의되지 않은 함수 mysql_connect() 호출

itgroup 2023. 1. 21. 09:45
반응형

치명적 오류: 정의되지 않은 함수 mysql_connect() 호출

PHP, MySQL, Apache가 있습니다. localhost()정상적으로 동작하고 있습니다.MySQL을 사용하다

치명적 오류: 정의되지 않은 함수 mysql_connect() 호출

어떻게 하면 고칠 수 있을까요?

7로 하여 PHP 7로 하였습니다.mysql_connect을 사용하다다음과 같이 합니다.

php -version

로로 change change .mysqli_connect

$host = "127.0.0.1";
$username = "root";
$pass = "foobar";
$con = mysqli_connect($host, $username, $pass, "your_database");

PHP를 PHP를 .mysql_* functions with with with의 mysqli_*★★★★★★★★★★★★★★★★★★.

PHP 7.0으로 업그레이드한 후 이 오류가 발생하면 사용되지 않는 라이브러리를 사용하고 있는 것입니다.

: Server mysql_connect : MySQL Server 에 대한 .

.57.0되었습니다.MySQLi PDO_MySQL이다.

자세한 사항은 이쪽:http://php.net/manual/en/function.mysql-connect.php

터미널을 열고 bellow 명령을 실행합니다.

sudo apt-get install mysql-server

PHP를 실행하고 있다면 mysql 5용 php 모듈도 설치해야 합니다.

sudo apt-get install php5-mysql

PHP의 mysql. 웹 를 만듭니다.<?php phpinfo(); exit(); ?>브라우저에 로드합니다.MySQL을 사용하다않으면 지원을 사용하여 PHP를 하거나 MySQL이 .

PHP.INI

다음 옵션을 활성화하지 않은 경우 체크합니다(mysql 모듈 로드 등).

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
extension_dir = "ext"

사용.<?php $con = mysqli_connect('localhost', 'username', 'password', 'database'); ?>

PHP 7. XAMPP에 PHP 7이 있을 수 있습니다.다음 두 가지 옵션이 있습니다.MySQLi 및 PDO.

CPanel 사용자의 경우 이 오류가 표시되고 사이트에 대해 이미 PHP 5.x가 선택되어 있는 경우 CPanel 업데이트가 비활성화되어 있을 수 있습니다.mysql ★★★★★★★★★★★★★★★★★」mysqliPHP 장 php php php

내선번호를 확인하고 활성화하려면:

  1. CPanel에서 PHP 버전 선택으로 이동
  2. PHP 5.x가 선택되어 있는지 확인합니다.
  3. 확인하세요mysql ★★★★★★★★★★★★★★★★★」mysqliPHP ★★★★★★★★★★★★★★★★★★*

이 오류는 PHP 버전 v7.0에서만 발생합니다. 그렇지 않으면 PHP 버전 5.0을 사용하여 이러한 오류를 방지할 수 있습니다.

그것을 사용하다

mysqli_connect("localhost","root","")

나는 mysql로 mysqli만 만들었다.

은 다음과 기능을 하여 '어댑터'의 사용을 입니다.mysqlimysql응용 프로그램 전체에 걸쳐 다음을 수행합니다.

if (!function_exists('mysql_connect')) {
    function mysql_connect($host = '', $user = '', $password = '', $database = '', $port = 0, $socket = '') {
        return mysqli_connect($host, $user, $password, $database, $port, $socket);
    }
}


if (!function_exists('mysql_select_db')) {
    function mysql_select_db($link, $dbname) {
        mysqli_select_db($link, $dbname);
    }
}

RHEL6에서도 같은 문제가 발생했습니다.알고 보니 /etc/php.d의 mysql.ini 파일에는 모듈 이름만 있고 풀패스 이름이 필요했습니다.RHEL6 시스템에서 동작하는 엔트리는 다음과 같습니다.

; Enable mysql extension module

extension=/usr/lib64/php/modules/mysql.so

파일을 수정한 후 Apache를 다시 시작했는데 모든 것이 작동했습니다.

솔루션이 여기에 있습니다(마지막 슬래시(NB: 후방 슬래시)를 삭제하기만 하면 됩니다).PHPIniDir 'c:\PHP\'): 치명적인 오류: 정의되지 않은 함수 mysql_connect() 호출로 해결할 수 없습니다.

Windows 8 n 을 사용하고 있는 경우는, 환경 변수를 변경해 이 문제를 해결했습니다.

다음의 순서에 따릅니다.[컴퓨터 속성]-> [상세 시스템 설정]-> [환경 변수]를 엽니다.'시스템 변수'에서 '경로'를 선택하고 '편집'을 클릭합니다. '변수 값'에서 'C:\php;' 또는 php가 설치된 경로를 추가합니다.

[확인]을 클릭하여 설정을 적용하고 시스템을 재시작합니다.그건 작동할 거야.

다음은 빠른 해결 방법입니다.

이 답변에 대해 모든 프로들이 저를 싫어할 것입니다.그러나 서버에서 같은 오류가 발생했습니다.치명적인 오류: 미포함 오류: PHP 7을 사용하던 정의되지 않은 함수 mysql_connect()를 호출합니다.모든 mysql 코드를 다시 쓸 시간이 없었습니다.필요한 경우 CPANEL에서 PHP Configuration을 검색하여 해당 계정의 버전을 PHP 7이 아닌 PHP 5.4와 같은 것으로 변경합니다.그 후, 상기의 에러 없이 코드는 정상적으로 동작했다.

Windows 10 을 사용하고 있는 경우는, PHP 7.2 를 사용해 mysql 에 접속합니다.이 오류가 발생한 경우

Uncaughted Error: 에서 정의되지 않은 함수 mysqli()를 호출합니다.

를 올바르게 설정하려면 , 다음의 순서를 실행합니다.

  1. PHP 설치 폴더로 이동합니다.
  2. check for php.ini 파일, (dev, prod 파일만 있고 파일 중 하나는 php.ini 파일)
  3. "mysqli"를 찾고 앞에 있는 ";"를 제거합니다.
  4. extension_dir를 찾고 extension 디렉토리의 경로를 언급합니다.
  5. 애플리케이션을 재기동합니다.

이게 누군가에게 도움이 됐으면 좋겠어.

mysqli 모듈이 PHP 버전에 설치되어 있는지 확인합니다.

$ ls /etc/php/7.0/mods-available/mysql*
/etc/php/7.0/mods-available/mysqli.ini /etc/php/7.0/mods-available/mysqlnd.ini

모듈을 유효하게 하다

$ sudo phpenmod mysqli

도움이 되는 코드

<?php 

$servername = "localhost";
$username = "root";
$password = "";


$con = new mysqli($servername, $username, $password);

?>

그러나 "서버 이름", "사용자 이름", "비밀번호"를 변경합니다.

사용 중 문제가 표시됨mysql_connect코드 라인에서 사용할 수 있으므로 에 있는 대로 추가합니다.mysqli_connect그러면 문제가 해결될 거예요.
그리고 나서mysqli그렇지 않으면 문제가 다시 발생할 수 있습니다.
예시mysql_select_db그렇게 될 것이다mysqli_select_db를 선택합니다.

언급URL : https://stackoverflow.com/questions/10615436/fatal-error-call-to-undefined-function-mysql-connect

반응형