Страница 2 из 31
Re: Модуль отслеживания посылок
Добавлено: Чт ноя 14, 2013 8:38 am
tammat
Пустая картинка в базу трэкнамбер и тд не добавляются...
Re: Модуль отслеживания посылок
Добавлено: Чт ноя 14, 2013 9:02 am
Amarok
tammat писал(а):Пустая картинка в базу трэкнамбер и тд не добавляются...
???
Re: Модуль отслеживания посылок
Добавлено: Чт ноя 14, 2013 9:27 am
tammat
Один в один как на картинке DiArt, при добавлении в форму на админке нажимаю либо добавить, либо проверить. картинка та же.
Посмотрел через phpMyAdmin. Есть только одна запись об отсутствии прокси в таблице POST_PROXY. Все остальные таблицы POST_TRACK,
POST_TRACKINFO пустые...
ЗЫ: разобрался...
Надо дать права на запуск по linux
Re: Модуль отслеживания посылок
Добавлено: Пн ноя 18, 2013 11:54 am
Amarok
После обновления Алисы - модуль работать перестал
Re: Модуль отслеживания посылок
Добавлено: Пн ноя 18, 2013 4:40 pm
sergejey
BlackWarrior писал(а):После обновления Алисы - модуль работать перестал
Видимо из-за того, что в стандартной библиотеке не так организована работа с записями базы данных. Я подправил немного общую ветку кода и по идее должно заработать.
Re: Модуль отслеживания посылок
Добавлено: Вт ноя 19, 2013 5:16 am
Amarok
Обновил - работает. Только таблицы post_proxy, post_track и post_trackinfo обнулились.
Re: Модуль отслеживания посылок
Добавлено: Вт ноя 19, 2013 10:31 am
LutsenkoDenis
ну тут могу только посочувствовать.
Обновил-работает: не понятно как обновлял. Обновлять можно по разному, результат тоже может отличаться.
Я делал прилоложение основываясь на blank.zip. Судя по его коду устанавливается или удаляется приложение только один раз. Дальше только проверяется установлен он или нет.
з.ы. dbInstall (\lib\module.class.php) Нужно рефакторить, потому-что это не процедура а какой-то абзац.
Re: Модуль отслеживания посылок
Добавлено: Вт ноя 19, 2013 10:51 am
sergejey
LutsenkoDenis писал(а):ну тут могу только посочувствовать.
Обновил-работает: не понятно как обновлял. Обновлять можно по разному, результат тоже может отличаться.
Я делал прилоложение основываясь на blank.zip. Судя по его коду устанавливается или удаляется приложение только один раз. Дальше только проверяется установлен он или нет.
з.ы. dbInstall (\lib\module.class.php) Нужно рефакторить, потому-что это не процедура а какой-то абзац.
Посмотрел dbInstall от модуля для посылок -- всё верно, при обновлении системы будут удаляться все данные при каждом обновлении системы.
dbInstall запускается каждый раз при обновлнеии для всех модулей т.к. предполагается, что в этой процедуре будет описана нужная структура данных.
Вот типовой пример содержимого dbInstall (взял из events.class.php):
Код: Выделить всё
function dbInstall($data) {
/*
events - Events
*/
$data = <<<EOD
events: ID int(10) unsigned NOT NULL auto_increment
events: EVENT_NAME varchar(255) NOT NULL DEFAULT ''
events: EVENT_TYPE char(10) NOT NULL DEFAULT ''
events: TERMINAL_FROM varchar(255) NOT NULL DEFAULT ''
events: TERMINAL_TO varchar(255) NOT NULL DEFAULT ''
events: USER_FROM varchar(255) NOT NULL DEFAULT ''
events: USER_TO varchar(255) NOT NULL DEFAULT ''
events: WINDOW varchar(255) NOT NULL DEFAULT ''
events: DETAILS text
events: ADDED datetime
events: EXPIRE datetime
events: PROCESSED int(3) NOT NULL DEFAULT '0'
EOD;
parent::dbInstall($data);
}
При описании структуры в таком виде (таблица: поле) запуск dbInstall лишь проверит наличие всех необходимых полей и добавит недостающие, но не будет удалять таблицу и создавть заново. Это даёт возможность в дальнейшем развивать структуру данных через обновления.
Re: Модуль отслеживания посылок
Добавлено: Вт ноя 19, 2013 11:39 am
LutsenkoDenis
ага, ну ок.
- 1. Как задать составной первичный ключ? Или ключ не инкрементарный? И т.д. Судя по коду никак. Или я не прав?
Код: Выделить всё
// //new table
if (strpos($definition, "auto_increment"))
{
$definition .= ", PRIMARY KEY(" . $field . ")";
//$definition.=", KEY(".$field.")";
}
2. Структура данных как правило описывается отдельно от кода. Чтоб не нужно было бегать по коду и выискивать структуру а посмотреть в модели данных и увидеть модель всего прложения стразу. Структура(модель данных программы) поддерживается и обновляется путём создания модифицирующих скриптов.
3. Что должно быть тут: Код: Выделить всё
$fileName = DIR_MODULES . $this->name . "/initial.sql";
4. Зачем нужен LogFile? Или DebMes мало?
p.s. Про dbInstall стало яснее.. данная функция мне не подходит. Поставлю заглушку, чтобы не перетирало данные.
p.p.s Прошу прощения у всех у кого обнулились таблицы. В течение дня сделаю обновление приложения.
Re: Модуль отслеживания посылок
Добавлено: Вт ноя 19, 2013 11:47 am
Amarok
LutsenkoDenis писал(а):Прошу прощения у всех у кого обнулились таблицы. В течение дня сделаю обновление приложения.
А я их забэкапил)
А вот сортировка по LM не работает(((