Неустранимая ошибка: вызов неопределенной функции mysql_connect ()

Я создал PHP, MySQL и Apache. localhost() для PHP, и он работает хорошо. Но после того, как я загрузил MySQL, он сообщает:

Неустранимая ошибка: вызов неопределенной функции mysql_connect ()

Как я могу это исправить?

Откройте терминал и выполните команду ниже.

 sudo apt-get install mysql-server 

Если вы используете PHP, вам также потребуется установить php-модуль для mysql 5:

 sudo apt-get install php5-mysql 

Используйте "mysqli_connect"

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

он будет работать, я исправил свою проблему с этим.

Если вы получите эту ошибку после обновления до PHP 7.0, вы используете устаревшие библиотеки.

mysql_connect – открыть соединение с сервером MySQL
Предупреждение
Это расширение было устарело в PHP 5.5.0, и оно было удалено в PHP 7.0.0. Вместо этого следует использовать расширение MySQLi или PDO_MySQL.

Подробнее здесь: http://php.net/manual/en/function.mysql-connect.php

Убедитесь, что ваша установка PHP была скомпилирована с поддержкой mysql. Создайте тестовую веб-страницу, содержащую <?php phpinfo(); exit(); ?> <?php phpinfo(); exit(); ?> <?php phpinfo(); exit(); ?> и загрузите его в свой браузер. Найдите страницу для MySQL. Если вы этого не видите, вам нужно перекомпилировать PHP с поддержкой MySQL или переустановить пакет PHP, в котором он встроен

 PHP.INI 

Проверьте, не забыли ли вы включить параметры ниже (загружает модули для mysql среди других):

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

У меня была такая же проблема на RHEL6. Оказывается, файл mysql.ini в /etc/php.d имел только имя модуля, но ему нужно было указать полный путь. В моей системе RHEL6 запись, которая работает:

 ; Enable mysql extension module extension=/usr/lib64/php/modules/mysql.so 

После изменения файла я перезапустил apache, и все сработало.

Я использую Windows 8 n, эта проблема была решена путем изменения переменных среды

выполните следующие действия: Откройте мои свойства компьютера-> расширенные параметры системы-> переменные среды. В разделе «Системные переменные» выберите «путь» и нажмите «изменить» в «значение переменной», добавьте «C: \ php;» ИЛИ путь, в котором установлена ​​php.

нажмите «ОК» и примените настройки и перезапустите систему. Он должен работать.

Мое решение находится здесь (мне нужно было просто удалить последнюю косую черту (NB: обратная косая черта) из PHPIniDir 'c:\PHP\' ): Неустранимая ошибка: вызов неопределенной функции mysql_connect () не может решить

Проверьте, установлен ли модуль 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); ?> 

Но измените «имя сервера», «имя пользователя» и «пароль»,

Вот быстрое решение:

Все профи, вероятно, ненавидят меня за этот ответ. Но я получил ту же ошибку на сервере: Fatal error: Uncaught Error: Call to undefined function mysql_connect (), который использовал PHP 7. Не успел переписать весь код mysql, поэтому быстрое временное исправление, если кому-то это нужно в CPANEL, чтобы найти конфигурацию PHP и изменить версию для этой учетной записи на что-то вроде PHP 5.4 вместо PHP 7. Затем код работал нормально без указанной выше ошибки.

Решением может быть использование таких функций адаптера, как эти, чтобы начать использовать mysqli вместо mysql над всем вашим приложением:

 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); } } 

Проблема возникает, когда вы используете mysql_connect в своих кодовых строках, поэтому просто добавляйте его, как в mysqli_cOnnect и это решит проблему.
вам также необходимо использовать mysqli всех ваших кодовых строках или проблема снова появится.
Например, mysql_select_db будет mysqL_select_db .
Это для выбора базы данных.

Спасибо, что это помогает