Возможный дубликат:
mysql_fetch_array () ожидает, что параметр 1 будет ресурсом, boolean задан в select
Я попытался подключить mysql database.but, получив следующую ошибку.
Предупреждение:
mysql_connect()
: [2002] Не удалось установить соединение, потому что целевой компьютер активно (пытается подключиться черезtcp://localhost:3306
) вtest.php
в строке 5Предупреждение :
mysql_connect():
соединение не может быть выполнено, потому что целевая машина активно отказалась от него. в test.php в строке 5 Предупреждение:mysql_close()
ожидает, что параметр 1 будет ресурсом, логическим значением, указанным вtest.php
в строке 15
test.php:
<?php $link = mysql_connect(localhost, dbuser, dbpass); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?>
Это произошло с нами при запуске PHP и MySQL на IIS7 в Windows Server 2008 в VirtualBox. Оказывается, что в файле хостов Windows не было записи IPv4 для localhost (127.0.0.1), поэтому маршрут к MySQL на localhost не найден.
Мы добавили следующее в файл hosts, который разрешил его:
127.0.0.1 localhost # Additional IPv4 entry ::1 localhost # Existing IPv6 localhost entry
Ссылка: Краткое описание PHP / MySQL Localhost через IPv4 и IPv6
Сервер MySQL не запущен, или у вас есть порт 3306 блокировки брандмауэра.
Это сообщение об ошибке означает, что система не приняла запрос на соединение TCP.
В строке поиска my.ini:
bind-address = 127.0.0.1
Переход от локального к сетевому IP.
Получил то же сообщение, пытающееся подключиться к «localhost» по ошибке (на сервере Windows). После исправления строки подключения на правильный (удаленный) сервер ошибка исчезла.