Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Не правильно работает запрос SHOW TABLES

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Возвращает меньше чем должен
Wolf Bloody
Отправлено: 14 Февраля, 2012 - 07:27:22
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Февр. 2012  


Помог: 0 раз(а)




Парни, вот не могу разобраться, уже второй день бьюсь. Есть такой запрос:

PHP:
скопировать код в буфер обмена
  1. $tableListFromDb = array();
  2.                 $result = mysql_query("SHOW TABLES IN $this->namebase;");
  3.                 $tableListFromDb = mysql_fetch_array($result, MYSQL_NUM);
  4.                 return $tableListFromDb;


он должен возвращать массив $tableListFromDb с именами таблиц в данной БД. Но вот на самом деле возвращает массив с 1 записью, а именно именем первой таблицы в БД. Кто сталкивался с такой проблемой, как ее решить?
 
 Top
Zuldek
Отправлено: 14 Февраля, 2012 - 07:41:23
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2122
Дата рег-ции: Июнь 2010  


Помог: 50 раз(а)




CODE (htmlphp):
скопировать код в буфер обмена
  1. $tableListFromDb = array();
  2.                 $result = mysql_query("SHOW TABLES IN $this->namebase;");
  3. while($tableListFromDb = mysql_fetch_array($result, MYSQL_NUM)){
  4. vardump($tableListFromDb);
  5. }

(Отредактировано автором: 14 Февраля, 2012 - 07:42:02)

 
 Top
DelphinPRO
Отправлено: 14 Февраля, 2012 - 07:42:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




PHP:
скопировать код в буфер обмена
  1.  
  2. $tableListFromDb = array();
  3. $result = mysql_query("SHOW TABLES IN $this->namebase;");
  4. $list = array();
  5. while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
  6.     $list[] = $row;
  7. }
  8. return $list;
  9.  


опередили Улыбка

(Отредактировано автором: 14 Февраля, 2012 - 07:43:12)



-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Wolf Bloody
Отправлено: 14 Февраля, 2012 - 08:36:03
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Февр. 2012  


Помог: 0 раз(а)




Парни, спасибо большое, так заработало, только выдает многомерный массив =( А может подскажите, вообще мне нужно проверить, существует ли данная таблица в БД, если да, вернуть TRUE если нет FALSE.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с СУБД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB