Регистрация    Забыли пароль?        Правила форума    FAQ (читать перед созданием новой темы)
Имя   Пароль  запомнить
  
Просмотр темы
Вернуться на сайт: PHP-Fusion SF Russian Support Site

Форум поддержки PHP-Fusion SF | PHP-Fusion SF - Разное | Вопросы / Жалобы / Предложения
# 1 Тема: Как создать инсталлятор для плагина?
pozitiv
SF Team

Avatar пользователя

паZитифф

SF Support Team

Почетный SF

Сообщений: 1676
Откуда: Киев
Зарегистрирован: 18 Ноября 2007, 18:49:13
Сказали спасибо 148 раз
Статус: offline
ICQ статус 3902393
Опубликовано 08 Мая 2008, 00:27:42
Я понимаю что можно подсмотреть в любом плагине, но хотелось бы увидетьмаленькое руководство....например я ненашел ниодного плагина где есть добавление полей в таблицу...а как сделать незнаю...


--------------------
wmz - Z226856101527
wmr - R513979829437

Все вопросы задавать на форуме. На вопросы заданные в приват или асю неотвечаю!
^ наверх ^ 3902393 http://nekto.me
# 2  
Bidgo
SF Team

Avatar пользователя

Антикиллер

SF Support Team

Любитель Fusion

Сообщений: 240
Откуда: Полтава
Зарегистрирован: 27 Октября 2007, 15:06:15
Сказали спасибо 39 раз
Статус: offline
ICQ статус 252950850
Опубликовано 08 Мая 2008, 12:42:25
посмотри файл upgrade.php или install.php.
Пример:
$result = dbquery("ALTER TABLE ".$db_prefix."users ADD user_gender TINYINT( 1 ) UNSIGNED DEFAULT '0' NOT NULL AFTER user_location");


--------------------
Все что НЕ делается, было бы к лучшему...
Присоединяйтесь!
^ наверх ^ 252950850 http://ordenplameni.tclans.ru/
# 3  
pozitiv
SF Team

Avatar пользователя

паZитифф

SF Support Team

Почетный SF

Сообщений: 1676
Откуда: Киев
Зарегистрирован: 18 Ноября 2007, 18:49:13
Сказали спасибо 148 раз
Статус: offline
ICQ статус 3902393
Опубликовано 08 Мая 2008, 14:13:30
Это просто запрос в базу, но в инсталляторе плагинов infusion.php все подругому, например так выглядит создание таблицы:

$inf_newtable_[1] = "chat (
`id` int(20) NOT NULL auto_increment,
`user` varchar(25) NOT NULL default '',
`adress` varchar(25) default NULL,
`message` varchar(255) NOT NULL default '',
`time` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) TYPE=MyISAM;";


а так можно добавить данные в таблицу:

$inf_insertdbrow_[1] = "mod_tracker_categories VALUES
(2, 'Music', 'music.jpg'),
(3, 'TV', 'tv.jpg'),
(4, 'Games', 'games.jpg'),
(5, 'Apps', 'apps.jpg'),
(6, 'Misc.', 'misc.jpg'),
(8, 'Pictures', 'pictures.jpg'),
(9, 'Anime', 'anime.jpg'),
(10, 'Comics', 'comics.jpg'),
(11, 'Books', 'books.jpg'),
(13, 'Music videos', 'musicvid.jpg');";


а как сделать алтер табле хз=(


--------------------
wmz - Z226856101527
wmr - R513979829437

Все вопросы задавать на форуме. На вопросы заданные в приват или асю неотвечаю!
^ наверх ^ 3902393 http://nekto.me
# 4  
pozitiv
SF Team

Avatar пользователя

паZитифф

SF Support Team

Почетный SF

Сообщений: 1676
Откуда: Киев
Зарегистрирован: 18 Ноября 2007, 18:49:13
Сказали спасибо 148 раз
Статус: offline
ICQ статус 3902393
Опубликовано 08 Мая 2008, 14:45:19
Похоже проблема в самом инсталяторе, там нехватает выделеного

if ($inf_newtables >= 1) {
for ($i=1;$i < ($inf_newtables+1);$i++) $result = dbquery("CREATE TABLE ".$db_prefix.$inf_newtable_[$i]);
}
if ($inf_insertdbrows >= 1) {
for ($i=1;$i < ($inf_insertdbrows+1);$i++) $result = dbquery("INSERT INTO ".$db_prefix.$inf_insertdbrow_[$i]);
}
if ($inf_altertables >= 1) {
for ($i=1;$i < ($inf_altertables+1);$i++) $result = dbquery("INSERT INTO ".$db_prefix.$inf_altertable_[$i]);
}


--------------------
wmz - Z226856101527
wmr - R513979829437

Все вопросы задавать на форуме. На вопросы заданные в приват или асю неотвечаю!
^ наверх ^ 3902393 http://nekto.me
Перейти на форум:


95,171,300 уникальных посетителей
сейчас: 26 Апреля 2024, 21:40:15
Генерация страницы: 0.11 сек.