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 :: Добавление таблицы

 PHP.SU

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


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

> Без описания
armancho7777777 Супермодератор
Отправлено: 16 Января, 2012 - 04:57:24
Post Id



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


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


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




Всем привет!
Задача такая:
есть некий пользователь БД `db`.
И этот пользователь наделён правами добавления таблицы `numbers`
и её редактирования в БД `db2`.
Но почему-то таблица создаётся в БД `db`, а не в `db2`

Вот код:

PHP:
скопировать код в буфер обмена
  1.  
  2. function creat_table_sms($db_name)
  3. {
  4.        
  5.     $dbS = mysql_connect("localhost","user","pass");
  6.     mysql_select_db($db_name, $dbS);   
  7.  
  8.     $result_creat = mysql_query("CREATE TABLE IF NOT EXISTS `numbers`
  9.                                     (`id` int(1) NOT NULL AUTO_INCREMENT,
  10.                                      `tel` text NOT NULL,
  11.                                      `count_sms` bigint(10) NOT NULL DEFAULT '0',
  12.                                       PRIMARY KEY (`id`)
  13.                                      ) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;", $dbS);   
  14.        
  15.         $resurn_fanc['error'] = false;
  16.         $resurn_fanc['error_text'] = '
  17.              Неудалось создать таблицу `numbers` в БД \''.$db_name.'\'
  18.              ';
  19.        
  20.         if($result_creat != false){    
  21.        
  22.            $resurn_fanc['error_text'] = '';                        
  23.            $resurn_insert = mysql_query("INSERT INTO `numbers` VALUES (1, '', 0)", $dbS);
  24.            
  25.            if($resurn_insert == false){
  26.  
  27.              $resurn_fanc['error'] = false;
  28.              $resurn_fanc['error_text'] = '
  29.                   Не удалось добавить запись в таблицу `numbers` в БД \''.$db_name.'\'
  30.                  ';
  31.  
  32.            }else{
  33.                  $resurn_fanc['error'] = true;
  34.                  $resurn_fanc['error_text'] = '';        
  35.            }
  36.         }
  37.                                  
  38.         mysql_close($dbS);     
  39.        
  40.         return  $resurn_fanc;    
  41.        
  42. }
  43.  
  44.  


Вызов функции:

(Добавление)
Всё, нашёл ошибку.

(Отредактировано автором: 16 Января, 2012 - 05:02:11)

 
 Top
Okula
Отправлено: 16 Января, 2012 - 06:12:44
Post Id



Участник


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


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




Можно попробовать указать базу данных в sql запросе, чтобы он имел такой вид:
CREATE TABLE IF NOT EXISTS `db`.`numbers`
 
 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