Форум программистов
 
Регистрация на форуме тут, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме 15-35 тыс рублей в месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2018, 21:42   #1
usa-1450
Пользователь
 
Регистрация: 07.01.2015
Сообщений: 70
По умолчанию Не могу подключиться к базе данных mysql - PHP БД

В командной строке всегда захожу вот так и нажимаю клавишу ENTER
Код:
mysql -u root -p
Перехожу на mysql и все работает. Решил попробовать соединиться с этой mysql и система выдает вот такую ошибку:

PHP код:
Warningmysqli_connect(): php_network_getaddressesgetaddrinfo failed: ���� ���� ����������. in C:\Server\data\htdocs\virthosts\test.ru\index.php on line 13

Warningmysqli_connect(): (HY000/2002): php_network_getaddressesgetaddrinfo failed: ���� ���� ����������. in C:\Server\data\htdocs\virthosts\test.ru\index.php on line 13
Database connection failedphp_network_getaddressesgetaddrinfo failed: ���� ���� ����������. 
Вот код:

PHP код:
<!DOCTYPE html>
<html lang="ru">
<head>
<title>Админ-панель</title>
</head>
<body>
<?php
$host
="localhost";
$user="root";
$pass=""//Установленный вами пароль
$db_name="publications";
$link mysqli_connect("$host,$user,$pass,$db_name");

if (!
$link)  {
    die(
"Database connection failed: " mysqli_connect_error());
}

$db_select mysqli_select_db($db_name,$link);
if (!
$db_select) {
    die(
"Database selection failed: " mysqli_error($link));
}


?>
</body>
</html>
Изображения
Тип файла: png Снимок.PNG (16.6 Кб, 124 просмотров)
usa-1450 вне форума Ответить с цитированием
Старый 19.04.2018, 21:47   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от usa-1450 Посмотреть сообщение
PHP код:
$link mysqli_connect("$host,$user,$pass,$db_name"); 
Здесь кавычки не нужны – ибо так в функцию передаётся только один аргумент вместо четырёх.
Andkorol вне форума Ответить с цитированием
Старый 19.04.2018, 22:07   #3
usa-1450
Пользователь
 
Регистрация: 07.01.2015
Сообщений: 70
По умолчанию

Если написать так, получается вот такое:

Код:
$link = mysqli_connect($host, $user, $pass, $db_name);
Код:
Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given 
in C:\Server\data\htdocs\virthosts\test.ru\index.php on line 18
Database selection failed:
usa-1450 вне форума Ответить с цитированием
Старый 19.04.2018, 22:37   #4
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от usa-1450 Посмотреть сообщение
Если написать так, получается вот такое:
Код:
Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given 
in C:\Server\data\htdocs\virthosts\test.ru\index.php on line 18
Database selection failed:
Цитата:
Сообщение от usa-1450 Посмотреть сообщение
PHP код:
$db_select mysqli_select_db($db_name,$link); 
Аргументы местами поменяй, есть мануал и подсказки в IDE для таких случаев.
Andkorol вне форума Ответить с цитированием
Старый 20.04.2018, 23:10   #5
usa-1450
Пользователь
 
Регистрация: 07.01.2015
Сообщений: 70
По умолчанию

Исправил код, подключился к базе. Пробую вывести результат запроса через цикл while но на экране ничего не выводит, пустой экран.

Код:
<!DOCTYPE html>
<html lang="ru">
<head>
<title>Админ-панель</title>
</head>
<body>
<?php
$host="localhost";
$user="root";
$pass=""; //Установленный вами пароль
$db_name="publications";
$link = mysqli_connect($host,$user,$pass,$db_name);

if (!$link)  {
    die("Database connection failed: " . mysqli_connect_error());
}

// Выполняем SQL-запрос
$query = 'SELECT * FROM publications.classics';
$result = mysqli_query($link,$query);

// Выводим результаты в html
echo "<table><br>";
while ($line = mysqli_fetch_array($result)) {
    echo "\t<tr><br>";
    foreach ($line as $col_value) {
        echo "\t\t<td>$col_value</td><br>";
    }
    echo "\t</tr>\n";
}
echo "</table><br>";

// Освобождаем память от результата
mysqli_free_result($result);

// Закрываем соединение
mysqli_close($link);

?>
</body>
</html>
usa-1450 вне форума Ответить с цитированием
Старый 20.04.2018, 23:19   #6
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Как найти ошибку в своем коде?
Andkorol вне форума Ответить с цитированием
Старый 20.04.2018, 23:28   #7
usa-1450
Пользователь
 
Регистрация: 07.01.2015
Сообщений: 70
По умолчанию

Код:
echo ini_set('display_errors',1);
Мне выдало цифру 1.
А
Код:
echo error_reporting(E_ALL);
Выдало такое:

32767
usa-1450 вне форума Ответить с цитированием
Старый 21.04.2018, 00:22   #8
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от usa-1450 Посмотреть сообщение
Код:
echo ini_set('display_errors',1);
Мне выдало цифру 1.
А
Код:
echo error_reporting(E_ALL);
Выдало такое:
32767
ГДЕ там в статье сказано, что перед этими функциями нужна конструкция echo ?!?!?
Читай статью внимательно, вдумчиво – тогда от неё будет толк.
Иначе будет вот такое вот.
Andkorol вне форума Ответить с цитированием
Старый 21.04.2018, 17:23   #9
usa-1450
Пользователь
 
Регистрация: 07.01.2015
Сообщений: 70
По умолчанию

Если просто вставить эти функции без echo - пустой экран также само.
usa-1450 вне форума Ответить с цитированием
Старый 21.04.2018, 23:11   #10
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Настоятельно рекомендую прочитать статью целиком.
Andkorol вне форума Ответить с цитированием
Ответ
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу подключиться к базе через connection string Joose Microsoft Office Access 5 03.06.2015 22:28
Не могу подключиться к базе данных из VS Slarman Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 1 06.03.2013 16:47
Не могу подключиться к MySQL-серверу с другого ПК в локальной сети palevg БД в Delphi 5 22.12.2010 22:52
Как подключиться к базе данных MS Access? chandrasecar PHP 5 03.09.2009 18:20
PHP. Как изменить значение записи в MySQL базе данных SeRhy PHP 4 18.06.2009 11:21