Не разу не сталкивался с темой динамического создания таблиц средствами php.
нужна таблица из 3 столбцов: id (int(3)), date (datetime), message (text), кодировка таблицы utf8_general_ci. И еще поле id автоинкремент,праймари
Вот что-то вроде так думаю
1. $new_table = mysql_query("CREATE TABLE `$tablename` (
2. `id` int(3) NOT NULL auto_increment,
3. `date` datetime NOT NULL default '0000-00-00 00:00:00',
4. `text` text collate utf8_general_ci NOT NULL default '',
5. PRIMARY KEY (`id`)
6. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci");
Но не создаёт(
Спустя 1 час, 8 минут, 41 секунда (1.07.2011 - 10:27) SoMeOnE написал(а):
mysql_query не нужен. Имя таблицы должно без знака $.
Спустя 12 минут, 50 секунд (1.07.2011 - 10:40) Kumirska написал(а):
SoMeOnE , разве не нужен? а как php тогда поймет логику строки?
переменную я поставил потому что у меня имена динамические у создаваемых таблиц
переменную я поставил потому что у меня имена динамические у создаваемых таблиц
Спустя 4 минуты, 35 секунд (1.07.2011 - 10:45) alex12060 написал(а):
Kumirska
Если не создаст, делай вывод ошибок - mysql_error()
Проверь, есть ли соединение с БД
Проверь, можно ли пользователю mysql создавать таблицы.
CREATE TABLE IF NOT EXISTS `$tablename` (
`id` int( 3 ) NOT NULL AUTO_INCREMENT ,
`date` datetime NOT NULL default '0000-00-00 00:00:00',
`text` text COLLATE utf8_general_ci NOT NULL default '',
PRIMARY KEY ( `id` )
) ENGINE = MYISAM DEFAULT CHARSET = utf8 COLLATE = utf8_general_ci;
Если не создаст, делай вывод ошибок - mysql_error()
Проверь, есть ли соединение с БД
Проверь, можно ли пользователю mysql создавать таблицы.
Спустя 2 минуты, 36 секунд (1.07.2011 - 10:47) bulgakov написал(а):
а вообще то это по моему плохая затея создание таблиц динамически.... не вижу причин что бы не использовать уже построенную базу и в нее добавлять уже значения? Просто так ты подвергаешь уязвимости базу...
Спустя 39 минут, 55 секунд (1.07.2011 - 11:27) waldicom написал(а):
Цитата (bulgakov @ 1.07.2011 - 08:47) |
Просто так ты подвергаешь уязвимости базу... |
Можно поподробнее?
Спустя 44 минуты, 18 секунд (1.07.2011 - 12:11) DySprozin написал(а):
Kumirska
запрос верный, видимо ошибка в переменной $tablename
echo $tablename mysql_query поставь - что выдаст?
запрос верный, видимо ошибка в переменной $tablename
echo $tablename mysql_query поставь - что выдаст?
Спустя 12 минут, 40 секунд (1.07.2011 - 12:24) Kumirska написал(а):
DySprozin
Все получилось, у меня проблема была действительно в переменной $tablename, всё потому что
я вытащил логин сотрудника из массива, а при сравнении с сессией переопределил переменную, ошибка делетанта.. Сейчас всё создается по вышеуказанному запросу! Спасибо За Внимание!
Все получилось, у меня проблема была действительно в переменной $tablename, всё потому что
я вытащил логин сотрудника из массива, а при сравнении с сессией переопределил переменную, ошибка делетанта.. Сейчас всё создается по вышеуказанному запросу! Спасибо За Внимание!
_____________
никому не дано знать абсолютной истины, ибо понятия, которыми мы оперируем, сами по себе относительны