У меня Ubuntu 14.04 LTS. Я установил apache, phpmyadmin и mysql. Я могу получить доступ к базам данных через localhost/phpmyadmin с использованием моего пароля и имени пользователя root. Я поместил ссылку внутри/etc/apache2/sites-enabled, которая ссылается на исходный .conf-файл веб-сайта, находящегося в/etc/apache2/sites-available. И у него есть эти строки (mypage.confДоступ запрещен для пользователя '' @ 'localhost' (с использованием пароля: НЕТ)
php_value mysql.default.user root
php_value mysql.default.password mypass
php_value mysql.default.host localhost
Когда я пытаюсь подключиться к базе данных, используя это в моем index.php работает прелестно:
mysql_connect('localhost', 'root', 'mypass') or die(mysql_error());
Но когда я пытаюсь подключитесь к базе данных, используя это ниже:
mysql_connect(ini_get("mysql.default.host"), ini_get("mysql.default.user"), ini_get("mysql.default.password")) or die(mysql_error());
В ответ на это сообщение об ошибке на странице и делает не выполнять остальную часть кода:
Access denied for user ''@'localhost' (using password: NO)
Как я могу понять из этого, что он получает от значения по умолчанию «». Поэтому я должен делать что-то неправильно в файле .conf. Можете ли вы мне помочь?
Пожалуйста, прочитайте [этот ответ] (http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php?answertab=votes#tab-top), так как вы должны действительно избегайте использования ** mysql _ ** или ** mysqli _ **. Вместо этого обратитесь к [PDO] (http://php.net/manual/en/book.pdo.php) – Vanitas
@Vanitas Я отредактирую свой код соответствующим образом. Спасибо за информацию. – kittenparry
Я предполагаю, что лучше поддерживать конфигурацию соединения MySQL в скриптах PHP (или в каком-то файле конфигурации) - это зависит от того, насколько сильно зависит веб-сервер, вам нужно правильно настроить Apache, когда вы перейдете на другой сервер, вам нужно будет перенастроить его и т. Д. –