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
Форумы портала PHP.SU :: Версия для печати :: Как создать таблицу из под php
Форумы портала PHP.SU » » Вопросы новичков » Как создать таблицу из под php

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

1. Predator - 18 Июля, 2012 - 11:20:52 - перейти к сообщению
Как создать таблицу из под php?
Такой структуры:
Однако
2. KingStar - 18 Июля, 2012 - 11:39:33 - перейти к сообщению
что-то тип такого:

PHP:
скопировать код в буфер обмена
  1. mysql_query("CREATE TABLE IF NOT EXISTS `table_name` (
  2.  `id` int(10) unsigned NOT NULL auto_increment,
  3.  `name` varchar(225) NOT NULL,
  4.  `message` varchar(225) NOT NULL,
  5.  `date` text,
  6.  PRIMARY KEY (`id`)
  7. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1");
3. Predator - 18 Июля, 2012 - 11:45:24 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. CREATE TABLE `my_sql_table` (
  2. `id` INT NOT NULL ,  
  3. `user_id_stats` VARCHAR( 10),
  4. `message` VARCHAR( 250 ),
  5. PRIMARY KEY ( `id` )
  6. )


Как указать какое нужно сравнение?
4. KingStar - 18 Июля, 2012 - 11:51:23 - перейти к сообщению
сравнение, по моему, по умолчанию берется из кодировки базы
5. Predator - 18 Июля, 2012 - 11:55:21 - перейти к сообщению
Вот делаю instail.Так не получается создать таблицу в чем ошибка?
PHP:
скопировать код в буфер обмена
  1.  } elseif($_GET['installation'] == '2')      {
  2.    
  3.  include ENGINE_DIR . '/config/db.php';
  4.  $sql = mysql_query("CREATE TABLE IF NOT EXISTS `tabl333e_name` (
  5. `id` int(10) unsigned NOT NULL auto_increment,
  6. `name` varchar(225) NOT NULL,
  7. `message` varchar(225) NOT NULL,
  8. `date` text,
  9. PRIMARY KEY (`id`)
  10. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1");
6. avtor.fox - 18 Июля, 2012 - 11:57:22 - перейти к сообщению
Хм
sql Вам не выдал ошибку?
7. KingStar - 18 Июля, 2012 - 11:59:39 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $result = mysql_query("..............................")
  2.     or die("Invalid query: " . mysql_error());


хотя я не вижу ошибки, скорее всего ошибка будет в подключении к БД
8. Predator - 18 Июля, 2012 - 12:04:25 - перейти к сообщению
[quote=KingStar][/quote]
Так работает, но вот почему нет подключения к бд, я указал путь до конфигурационного файла и загрузил до создания тбл.
Его содержание:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. define ("LB_DB_HOST", "localhost");
  4.  
  5. define ("LB_DB_NAME", "user30386");
  6.  
  7. define ("LB_DB_USER", "user30386");
  8.  
  9. define ("LB_DB_PASS", "123r");  
  10.  
  11. define ("LB_DB_PREFIX", "LB");
  12.  
  13. define ("LB_DB_COLLATE", "utf8");
  14.  
  15. $DB = new DB;
  16.  
  17. ?>
9. KingStar - 18 Июля, 2012 - 12:05:43 - перейти к сообщению
ну дык и используй не стандартную функцию php (mysql_query), а из класса
10. Predator - 18 Июля, 2012 - 12:08:22 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $DB->mysql_query("CREATE TABLE IF NOT EXISTS `tabl333e_name` (
  2. `id` int(10) unsigned NOT NULL auto_increment,
  3. `name` varchar(225) NOT NULL,
  4. `message` varchar(225) NOT NULL,
  5. `date` text,
  6. PRIMARY KEY (`id`)
  7. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1");

Так? Сомневаюсь что сработает,хотя попробую.
11. KingStar - 18 Июля, 2012 - 12:10:38 - перейти к сообщению
я не знаю что у тебя за класс, и что у него внутряни, как я тебе могу сказать, так или не так
может у тебя функция внутри обзывается vasya_pupkin
12. Predator - 18 Июля, 2012 - 12:11:18 - перейти к сообщению
Чтот не пошло.
Рядом прописано
PHP:
скопировать код в буфер обмена
  1.  echo "Таблица LB_chat успешно создана."

Не выводит на экран, что не так? Что та в коде не то.
13. KingStar - 18 Июля, 2012 - 12:13:24 - перейти к сообщению
Predator пишет:
Что та в коде не то.


у тебя есть функция mysql_query внутри класса??? сомневаюсь, что она так зовется...
14. Predator - 18 Июля, 2012 - 12:47:45 - перейти к сообщению
Сделал по аналогии как у разработчика, ошибки нет значит подключение к бд есть.Но таблица по прежнему не создается.

PHP:
скопировать код в буфер обмена
  1. include ENGINE_DIR . '/config/db.php';
  2. $install_db = array();
  3. $install_db[] = "DROP TABLE IF EXISTS 345555555555555";
  4. $install_db[] = ("CREATE TABLE 345555555555555 (
  5. `id` int(10) unsigned NOT NULL auto_increment,
  6. `name` varchar(225) NOT NULL,
  7. `message` varchar(225) NOT NULL,
  8. `date` text,
  9. PRIMARY KEY (`id`)
  10. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1")
  11.  or die("Invalid query: " . mysql_error());
15. DelphinPRO - 18 Июля, 2012 - 12:49:59 - перейти к сообщению
в phpMyAdmin перейди на вкладку "Экспорт" выбери пункт "Отобразить вывод как текст" и отключи вывод комментариев. Нажми кнопку экспорт. На экране появится дамп таблицы вместе к кодом ее создания.
Копируешь код в php скрипт в строковое значение и запичиваешь в функцию mysqli_query()
(Добавление)
Predator пишет:
$install_db[] = ("CREATE TABLE 345555555555555 (
`id` int(10) unsigned NOT NULL auto_increment,
`name` varchar(225) NOT NULL,
`message` varchar(225) NOT NULL,
`date` text,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1")
or die("Invalid query: " . mysql_error());


Это что за конструкция Улыбка Улыбка Голливудская улыбка

PHP:
скопировать код в буфер обмена
  1. $query = "CREATE TABLE 345555555555555 (
  2. `id` int(10) unsigned NOT NULL auto_increment,
  3. `name` varchar(225) NOT NULL,
  4. `message` varchar(225) NOT NULL,
  5. `date` text,
  6. PRIMARY KEY (`id`)
  7. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1";
  8. mysqli_query($link, $query) or die(mysqli_error($link));

 

Powered by ExBB FM 1.0 RC1