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

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

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

Ответ
 
Опции темы
Старый 19.04.2018, 22:42   #1
usa-1450
Пользователь
 
Регистрация: 07.01.2015
Сообщений: 44
Репутация: 10
По умолчанию Не могу подключиться к базе данных 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 Кб, 0 просмотров)
usa-1450 вне форума   Ответить с цитированием
Старый 19.04.2018, 22:47   #2
Andkorol
Профессионал
 
Регистрация: 31.05.2010
Сообщений: 3,295
Репутация: 1064
По умолчанию

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

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

Код:

$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, 23:37   #4
Andkorol
Профессионал
 
Регистрация: 31.05.2010
Сообщений: 3,295
Репутация: 1064
По умолчанию

Цитата:
Сообщение от 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 вне форума   Ответить с цитированием
Старый 21.04.2018, 00:10   #5
usa-1450
Пользователь
 
Регистрация: 07.01.2015
Сообщений: 44
Репутация: 10
По умолчанию

Исправил код, подключился к базе. Пробую вывести результат запроса через цикл 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 вне форума   Ответить с цитированием
Старый 21.04.2018, 00:19   #6
Andkorol
Профессионал
 
Регистрация: 31.05.2010
Сообщений: 3,295
Репутация: 1064
По умолчанию

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

Код:

echo ini_set('display_errors',1);

Мне выдало цифру 1.
А
Код:

echo error_reporting(E_ALL);

Выдало такое:

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

Цитата:
Сообщение от usa-1450 Посмотреть сообщение
Код:

echo ini_set('display_errors',1);

Мне выдало цифру 1.
А
Код:

echo error_reporting(E_ALL);

Выдало такое:
32767
ГДЕ там в статье сказано, что перед этими функциями нужна конструкция echo ?!?!?
Читай статью внимательно, вдумчиво – тогда от неё будет толк.
Иначе будет вот такое вот.
Andkorol вне форума   Ответить с цитированием
Старый 21.04.2018, 18:23   #9
usa-1450
Пользователь
 
Регистрация: 07.01.2015
Сообщений: 44
Репутация: 10
По умолчанию

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

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

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

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


09:05.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru