Ошибка «Без базы данных» даже после того, как выбран db

Я выбрал базу данных, но по какой-то странной причине она все еще говорит, что она не выбрана.

Линии подключения:

$location = "localhost"; $user = "user"; $pass = "pass"; //Database Selection $link = mysql_connect($location, $user, $pass); if (!$link) { die('Could not connect: ' . mysql_error()); } //Database Selection mysql_select_db('database') or die(mysql_error()); 

Запрос:

 while ($row_fpages = mysql_fetch_array($result_fanpage)) { if ( $row_fpages['client'] == NULL ) { //GRAPHS $sql = "SELECT date, likes FROM statistics_pages WHERE idnum='".$_COOKIE['id']."' AND page_name = ".$row_fpages['page_name']." LIMIT 7"; $result_apps = mysql_query($sql) or die(mysql_error()); 

И ошибка – это обычная No database selected .

Я никогда не видел эту ошибку раньше, и я пытался изменить много вещей, но просто не работал.

Вы забыли передать переменную $ link в качестве параметра ссылки.

  mysql_select_db('database', $link) or die(mysql_error()); 

EDIT: попробуйте передать базу данных в параметр FROM, например

  SELECT * FROM `database`.`table` 

Могут ли быть разрешения пользователя mysql на выбранную базу данных?

Другая причина, по которой появляется эта ошибка, заключается в том, что имя пользователя и пароль, которые вы используете для доступа к базе данных, могут не иметь соответствующих перехватов чтения / записи . Особенно на общем сервере хостинга вам необходимо назначить соответствующее имя пользователя соответствующей базе данных. Я недавно столкнулся с этой проблемой, я создал новую базу данных и забыл назначить persmissions для моего существующего имени пользователя.

Проверьте, добавили ли вы пользователя в db и дали ему соответствующие разрешения.

Убедитесь, что ваш код не вставлен в классы и прочее, если он представлен только как есть, то, возможно, «база данных» недействительна, дважды проверьте свои значения и попробуйте сделать его внешней переменной.

SOLVED Используйте `backticks для зарезервированных слов MYSQL … ваше имя таблицы зарезервировано для MYSQL … Измените название своей таблицы.