Предупреждение: mysql_select_db() Доступ запрещен для пользователя '' @'localhost' (с использованием пароля: НЕТ)

Я новичок в веб-разработчике, и мне нужна помощь, чтобы выяснить, в чем проблема. У меня была установка MySQL 5.6.10, и мне была поставлена ​​задача обновить src веб-сайта, который в настоящее время живет в течение последних 5 лет. Ни один из кодов не изменился, и он работает для локальной машины других разработчиков. Сервер работает 5.0.51b, и я просто понизил рейтинг до 5.5.30, пытаясь убрать синтаксическую ошибку. Ошибка была SET OPTION SQL_BIG_SELECTS = 1 устарела для SET SQL_BIG_SELECTS в определенной версии. Я не могу изменить синтаксис из-за версии, которую запускает сервер. Поэтому я выбрал версию до 5.5.30.

Моя проблема после младшего класса:

Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user
''@'localhost' (using password: NO) in C:\Program Files (x86)\Apache Software
Foundation\Apache2.2\htdocs\****\src\www\include\func\func.db.php on line 47

Я использую MySQL Workbench для своих подключений, ни одно из подключений или пользователей не имеет связанных с ними паролей. У меня есть еще один проект, который не является живым, который отлично работает с локальным хостом. Мои хосты и хосты имеют правильный синтаксис для работы (подтвержденный другим проектом). Все это работало должным образом, и сегодня удалось обнародовать страницы через vhost. У меня никогда не было никаких проблем с тем, как все настройки вытащили страницу индекса. Единственная проблема - проблемы с версией MySQL. Что я могу сделать, чтобы исправить эту проблему? Я попытался воссоздать соединения в верстаке и даже удалить все экземпляры и воссоздать их. Я в тупике. Любая помощь будет принята с благодарностью.

Ответы

Ответ 1

Внимательно посмотрите на свою ошибку, вы увидите, что она сообщает вам, что не так (как правило, для сообщений об ошибках):

Access denied for user
''@'localhost' (using password: NO)

Глядя конкретно на:

''@'localhost'
^^

Вы видите, что ни один пользователь не был указан. Вам нужно указать пользователя, которого вы хотите подключить, как.

mysql_connect("HOST","USER","PASSWORD")

Что происходит перед вызовом mysql_select_db.

MySQL Connect  и MySQL Select DB

УВЕДОМЛЕНИЕ: Не обновлять до PHP 5.5 для MySQL_ * функции устарели. Я говорю это, потому что вы не хотите менять какой-либо код.

Ответ 2

Вы можете увидеть эту ошибку, потому что вы не подключили свою базу данных mysql должным образом.

mysql_connect("HOST","USER","PASSWORD")

убедитесь, что хост, имя пользователя и пароль являются подлинными

Ответ 3

Был ли MySQL единственным, что вы обновили? Есть ли шанс, что вы обновили PHP и теперь не имеете register_globals? Если у вас это получилось, и ваши коллеги его найдут, это может объяснить различия, которые вы видите.

http://php.net/manual/en/security.globals.php

Ответ 4

Из того, что я вижу в возвращенной ошибке, вы не передали соединение имя пользователя, которое будет использоваться для подключения к MySQL.