Всем привет! появился вопрос по установке вылезает вот такая ошибка и хоть тресни
Notice: Undefined index: pass in d:\www\includes\database.mysql.inc on line 31
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at d:\www\includes\database.mysql.inc:31) in d:\www\includes\session.inc on line 10
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at d:\www\includes\database.mysql.inc:31) in d:\www\includes\session.inc on line 10
warning: Cannot modify header information - headers already sent by (output started at d:\www\includes\database.mysql.inc:31) in d:\www\includes\common.inc on line 99.
в sites\default\setting.php прописано $db_url = 'mysql://root:localhost/drupal';
$base_url = 'http://localhost';
что делать??
Комментарии
Сделать нормального пользователя и _пароль_ для БД.
Заведите себе правило, пользователя без пароля не бывает.
И когда что-то _работает_ под root - это уже заведомо не верно. root - по определению _только_ для установки и настройки.
--
USU-Lug http://usu-lug.org.ru
Ник, совет конечно правильный... только вот проблема - не в тему... Ошибку это не исправит
"Внимание, правильный ответ".
Ошибка "headers already sent" означает, что HTTP responce headers разорваны пустой строкой. Наиболее частая причина ее появления (если не считать ошибок кодирование) - наличие в теле PHP-скрипта символов после зкрывающего тэга "?>". Файл, вызывающий проблему, надо находить начиная с того, на который указывает фрагмент текста "output started at..."
"Учите матчасть", как говаривал мой старшина
"headers already sent" Это означает, что "заголовки уже посланы". Такая ошибка возникает, если после начала вывода информации, кто-то пытается изменить заголовок (Header();). Вот php и предупреждает, что заголовки уже посланы и менять их уже, соответственно, позно. Но. В данном случае эта ошибка ничего не говорит. Если бы Вы были внимательнее, то навено обратили бы внимание на строку:
"Notice: Undefined index: pass in d:\www\includes\database.mysql.inc on line 31"
Т.е. в переменную $pass ничего не кладется. Именно этот Notice и провоцирует сброс заголовков. Поэтому все остальные warning являются лишь побочными первого Notice (если бы его не было, то заголовки еще можно было менять) и, в данном случае, ничего не значат.
+ в добавок
http://drupal.ru/node/872
Так что задание пароля - поможет, проверено...
"Учите матчасть", как говорил ваш старшина...
--
USU-Lug http://usu-lug.org.ru
database.mysql.inc
после
if (isset($url['port'])) {
$url['host'] = $url['host'] .':'. $url['port'];
}
добавить
if (!isset($url['pass']))
$url['pass']='';
смысл в том, что он не предполагает, что может быть пустой пароль. что, к слову сказать, вполне нормально при разработке.
для локалхоста - очень даже неплохое решение, имхо. Мне вот может лениво вписывать по сотне раз на дню пароль при обновлении установки друпал.
Впрочем сам теперь использую пользователя с паролем.