Access denied for user root@localhost и другие ошибки в mysql, xammp. как исправить?
Здраствуйте, php/mysql, урок 54. Пытаюсь написать код, а браузер выдаёт такие ошибки:
Warning: mysqli::__construct(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: NO) in C:\xampp\htdocs\kinomonster\index.php on line 2
Warning: Undefined variable $mysqli in C:\xampp\htdocs\kinomonster\index.php on line 2
Fatal error: Uncaught TypeError: Unsupported operand types: null - mysqli in C:\xampp\htdocs\kinomonster\index.php:2 Stack trace: #0 {main} thrown in C:\xampp\htdocs\kinomonster\index.php on line 2
Помогите разобраться, пожалуйста.
P.S. Написано у меня это:
<?php
$mysqli - new mysqli('localhost', 'root', '', 'kinomonster');
if(mysqli_connect_errno()) {
printf("Соединение не установлено", mysqli_connect_error());
exit();
}
$mysqli->set_charset('utf8');
$query = $mysqli->query('SELECT * FROM movie');
while ( $row = mysqli_fetch_accoc($query)) {
echo $row['name'];
}
$mysqli->close();
?>
6 ответов
Ошибка в том что тире написал:
$mysqli - new mysqli
вместо ->
UPD: Пришел к ноуту. Нужно не тире писать, и не ->, а равно, это же переменная задается, т.е. так:
$mysqli = new mysqli('localhost', 'root', '', 'kinomonster');
Я пересмотрел видео и там было = вместо -
В общем как в видео нужно, я по памяти написал, но точно не просто тире.
Если такая ошибка с access denied, тогда проверяй реквизиты подключения к mysql, логин и пароль и название базы данных
где использовался бы sublime
Sublime Text - это же просто редактор, хоть в блокноте notepad можно писать, от этого ошибка не исчезнет.
Нужно убедиться, что логин, пароль и имя базы данных соответствует созданной. Может название базы не "kinomonster", а "kinomonstr" или какая-то буква не в английской раскладке клавиатуры написана, тогда не подключится. Лучше попробовать по уроку создать новую базу данных и к ней подключаться пробовать.
И я добрался до ноута и посмотрел, что неверно посоветовал, нужно просто равно писать, это присваивается переменная:
$mysqli = new mysqli('localhost', 'root', '', 'kinomonster');
Да, спасибо за ответ. Я пересмотрел видео и там было = вместо -. Но ошибка с access denied всё ещё на месте.
Warning: mysqli::__construct(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: NO) in C:\xampp\htdocs\kinomonster\index.php on line 2
Соединение не установлено
Я уверен, что реквизиты правильные. Я пытался найти решение, но нигде не нашёл ответ, где использовался бы sublime.
Я просто всё переустановил и заработало.