Каким образом можно соединить базу данных с PHP?

У меня возникла проблема с подключением PHP к базе данных MySQL. Я изучаю материал, который предоставлен на уроках от Хауди Хо с 2016 года, но не уверен, актуальна ли информация, или OpenServer версии 6 стал сложнее в использовании. Я не понимаю, как правильно установить связь между ними. Когда я использую следующий код:

<pre><code class="php">&lt;?php
$connection = mysqli_connect('127.0.0.1', 'root@localhost', '123', 'test_db');

if( $connection == false ) 
{
    echo 'Не удалось подключится к базе данных! &lt;br&gt;'; 
    echo mysqli_connect_error();
    exit();
}</code></pre>

я получаю следующее сообщение об ошибке: 

<blockquote>Warning: mysqli_connect(): (HY000/2002): Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение. in C:\OSPanel\home\test\index.php on line 3<br/>
Не удалось подключится к базе данных!<br/>
<br/>
Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение. <br/>
</blockquote>

Можете помочь мне разобраться, в чем может быть проблема?
  • 12 марта 2025 г. 9:44
Ответы на вопрос 2
Судя по вашему коду и ошибке, проблема может быть связана с неверными параметрами подключения к базе данных MySQL или с тем, что сервер MySQL не работает в данный момент. Давайте рассмотрим основные шаги, которые помогут вам устранить проблему:

1. **Проверьте работу сервера MySQL:**
   - Убедитесь, что сервер MySQL запущен в вашем OpenServer. Откройте панель управления OpenServer и проверьте статус MySQL. Если он не запущен, запустите его.

2. **Параметры подключения:**
   - Параметры для подключения к базе данных должны быть правильными. В вашем коде:
     ```php
     $connection = mysqli_connect('127.0.0.1', 'root@localhost', '123', 'test_db');
     ```
     Наиболее вероятно, что имя пользователя неправильно. Попробуйте изменить на:
     ```php
     $connection = mysqli_connect('127.0.0.1', 'root', '123', 'test_db');
     ```
   - Убедитесь, что у вас действительно есть пользователь `root` с паролем `123`, и что у него есть доступ к базе данных `test_db`.

3. **Проверка порта:**
   - Если MySQL настроен на использование порта, отличного от стандартного (3306), вам нужно указать его в функции `mysqli_connect()`. Например:
     ```php
     $connection = mysqli_connect('127.0.0.1:порт', 'root', '123', 'test_db');
     ```
   - Обычно в OpenServer используется стандартный порт 3306, но если вы изменяли настройки, то проверьте это.

4. **Проверьте наличие базы данных:**
   - Убедитесь, что база данных `test_db` существует. Вы можете сделать это, подключившись к MySQL через командную строку или любой GUI инструмент (например, phpMyAdmin).

5. **Логи ошибок:**
   - Если проблема не решается, посмотрите на логи ошибок MySQL, они могут дать больше информации о характере проблемы. Логи могут находиться в папке `logs` вашего OpenServer.

Попробуйте выполнить вышеперечисленные шаги и убедитесь, что ваш код соответствует указанным параметрам подключения. Если возникнут новые проблемы, пожалуйста, предоставьте дополнительные детали об ошибках.
Похожие вопросы