Loading...
В общем ситуация такова,есть код,есть в нем подключение БД но сама бд находиться на другом сервере!Ошибка в 12 строке ,ее можно как то исправить?
php
   <?php error_reporting(E_ALL); ini_set('display_errors', 1);  // Данные для подключения к базе данных $host = "127.0.0.1";  // IP вашего сервера $db_user = "gs103429";  // Имя пользователя вашей базы данных $db_password = "raritet777777";  // Пароль для доступа $dbname = "gs103429";  // Название базы данных  // Подключение к базе данных $db = new mysqli($host, $db_user, $db_password, $dbname, 3306);  // Проверка на ошибки при подключении if ($db->connect_error) {     die("Ошибка подключения к базе данных: " . $db->connect_error); }  // Проверка данных из формы if (isset($_POST['nickname']) && isset($_POST['login']) && isset($_POST['old_password']) && isset($_POST['new_password'])) {     $nickname = $_POST['nickname'];  // Имя пользователя     $login = $_POST['login'];  // Почта пользователя (столбец login)     $old_password = $_POST['old_password'];  // Старый пароль     $new_password = $_POST['new_password'];  // Новый пароль      // Проверка старого пароля по имени пользователя и почте     $query = $db->prepare("SELECT password FROM nrp_players WHERE nickname = ? AND login = ?");     $query->bind_param("ss", $nickname, $login);     $query->execute();     $result = $query->get_result();      if ($result->num_rows > 0) {         $row = $result->fetch_assoc();         if ($row['password'] == $old_password) {             // Старый пароль верен, обновляем на новый             $update_query = $db->prepare("UPDATE nrp_players SET password = ? WHERE nickname = ? AND login = ?");             $update_query->bind_param("sss", $new_password, $nickname, $login);             $update_query->execute();              if ($update_query->affected_rows > 0) {                 echo "Пароль успешно изменен!";             } else {                 echo "Не удалось изменить пароль. Попробуйте снова.";             }         } else {             echo "Старый пароль неверен.";         }     } else {         echo "Пользователь с таким никнеймом и почтой не найден.";     }      $db->close(); } else {     echo "Пожалуйста, заполните все поля."; } ?>   
вот строка в которой ошибка
php
   $db = new mysqli($host, $db_user, $db_password, $dbname, 3306);   
Ну и сама ошибка
php
   Fatal error: Uncaught mysqli_sql_exception: Access denied for user 'gs103429'@'localhost' (using password: YES) in /var/www/drymlu02/data/www/country.vaki.pro/change_password.php:12 Stack trace: #0 /var/www/drymlu02/data/www/country.vaki.pro/change_password.php(12): mysqli->__construct() #1 {main} thrown in /var/www/drymlu02/data/www/country.vaki.pro/change_password.php on line 12   

________
посл. ред. 02.01.2026 в 17:45; всего 2 раз(а); by Шершень
Шершень , указать адрес другого сервера!
________
посл. ред. 02.01.2026 в 17:52; всего 1 раз(а); by ssh
ssh (2 янв 2026, в 17:52)
Шершень , указать адрес другого сервера!
так я указывал,нифига не работает
указать ip другого сервера без https://
Шершень (2 янв 2026, в 17:43)
В общем ситуация такова,есть код,есть в нем подключение БД но сама бд находиться на другом сервере!Ошибка в 12 строке ,ее можно как то исправить?
php
   <?php error_reporting(E_ALL); ini_set('display_errors', 1);  // Данные для подключения к базе данных $host = "127.0.0.1";  // IP вашего сервера $db_user = "gs103429";  // Имя пользователя вашей базы данных $db_password = "raritet777777";  // Пароль для доступа $dbname = "gs103429";  // Название базы данных  // Подключение к базе данных $db = new mysqli($host, $db_user, $db_password, $dbname, 3306);  // Проверка на ошибки при подключении if ($db->connect_error) {     die("Ошибка подключения к базе данных: " . $db->connect_error); }  // Проверка данных из формы if (isset($_POST['nickname']) && isset($_POST['login']) && isset($_POST['old_password']) && isset($_POST['new_password'])) {     $nickname = $_POST['nickname'];  // Имя пользователя     $login = $_POST['login'];  // Почта пользователя (столбец login)     $old_password = $_POST['old_password'];  // Старый пароль     $new_password = $_POST['new_password'];  // Новый пароль      // Проверка старого пароля по имени пользователя и почте     $query = $db->prepare("SELECT password FROM nrp_players WHERE nickname = ? AND login = ?");     $query->bind_param("ss", $nickname, $login);     $query->execute();     $result = $query->get_result();      if ($result->num_rows > 0) {         $row = $result->fetch_assoc();         if ($row['password'] == $old_password) {             // Старый пароль верен, обновляем на новый             $update_query = $db->prepare("UPDATE nrp_players SET password = ? WHERE nickname = ? AND login = ?");             $update_query->bind_param("sss", $new_password, $nickname, $login);             $update_query->execute();              if ($update_query->affected_rows > 0) {                 echo "Пароль успешно изменен!";             } else {                 echo "Не удалось изменить пароль. Попробуйте снова.";             }         } else {             echo "Старый пароль неверен.";         }     } else {         echo "Пользователь с таким никнеймом и почтой не найден.";     }      $db->close(); } else {     echo "Пожалуйста, заполните все поля."; } ?>   
вот строка в которой ошибка
php
   $db = new mysqli($host, $db_user, $db_password, $dbname, 3306);   
Ну и сама ошибка
php
   Fatal error: Uncaught mysqli_sql_exception: Access denied for user 'gs103429'@'localhost' (using password: YES) in /var/www/drymlu02/data/www/country.vaki.pro/change_password.php:12 Stack trace: #0 /var/www/drymlu02/data/www/country.vaki.pro/change_password.php(12): mysqli->__construct() #1 {main} thrown in /var/www/drymlu02/data/www/country.vaki.pro/change_password.php on line 12   
Удаленный доступ включи для бд в панеле.
Ramirez
Адм
(2 янв 2026, в 18:56)
Удаленный доступ включи для бд в панеле.
это игровой хост там хз как это сделать?
Шершень , это реально ты? Такие вопросы задавать? 13 лет тут,слабо верится что это ты
Hat-Trick (2 янв 2026, в 20:36)
Шершень , это реально ты? Такие вопросы задавать? 13 лет тут,слабо верится что это ты
я на прямую не занимался изучением php и т.д ну и не планирую ничего изучать
сайт поставить могу,бд подключить могу,всеееее))) и не в том возрасте уже я что бы ,что то изучать
да и некогда
________
посл. ред. 02.01.2026 в 21:28; всего 1 раз(а); by Шершень
Шершень (2 янв 2026, в 21:27)
я на прямую не занимался изучением php и т.д ну и не планирую ничего изучать
сайт поставить могу,бд подключить могу,всеееее))) и не в том возрасте уже я что бы ,что то изучать
да и некогда
На другом сервере подключено удаленный доступ к базе ?
Может и порт не 3306
Шершень ,
1. Вариант
$host = "123.123.123.123"; // Замените на реальный IP удаленного сервера
2. Вариант
На сервере с БД : Открыть файл конфигурации (обычно /etc/mysql/my.cnf или /etc/mysql/mysql.conf.d/mysqld.cnf).
3. Вариант
Найти строку bind-address = 127.0.0.1 и заменить её на bind-address = 0.0.0.0 (или закомментировать её символом #).
Перезапустить MySQL: sudo systemctl restart mysql.
4. Вариант
Убедитесь, что порт 3306 открыт на удаленном сервере для входящих соединений.
Если на сервере стоит ufw, выполните: sudo ufw allow 3306/tcp.
Онлайн: 3
Время:
Gen. 0.1459
(c) Bym.Guru 2010-2026