Ilrilan
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Если добавленное вами поле нормально видно и нормально обновляется через оболочку MySQL, если скрипты IkonBoard нормально считывают значения этого поля - но НИКАК не желают сами его изменять... Залезьте в папку "/ib3-cgi-bin/Database/Config/", и подкорректируйте .cfg-файл нужной вам таблицы - пока описание вашего нового поля не появится в этих конфигурационных файлах, скрипты упорно не будут "видеть" его значения, присылаемые из откорректированных форм. Вот пример (мой, в котором я сутки долбался, пытаясь понять - что я не так скопировал). Надо было мне добавить форумам ещё одно свойство - "FORUM_EMAIL_ADRESS". Я запустил через SQL команду "ALTER TABLE ID_FORUM_INFO ADD FORUM_EMAIL_ADRESS VARCHAR(100)", посмотрел через DESCRIBE новую структуру - все нормально. Затем чуть изменил скрипт Sources/Admin/ForumControl.pm - добавил строки: в edit: Код: $html .= $SKIN->section_header( TITLE => "Forum E-Mail adresss", TEXT => "This is the adress, which will be used for using this forum by e-mail." ); $html .= $SKIN->td_input ( TEXT => 'Enter e-mail adress, or leave blank of you<br> do not wish to use this feature', NAME => 'FORUM_EMAIL', VALUE=> '' ); | и в do_edit: Код: FORUM_EMAIL => $iB::IN{'FORUM_EMAIL'}, | и почти то же самое в add и do_add соответственно. И вот тут появилась проблема... Значение, которое я задавал через форму в AdminCP, упорно игнорировалось командами do_edit и do_add. Я проверил все, что можно - дошел до переписывания механизма чтения данных из форм в ikoboard.cgi. Не работало! Затем (уже надоело!) залез на swarf.net - думал, найду подходящий хак и чуток изменю. И вот там-то (через час блуждания) и наткнулся на этот топик - http://swarf.net/forums/cgi-bin/ikonboard.cgi?s=c6363bc29d4a220e04734f957b4d3b8a;act=ST;f=19;t=3350;hl=updat+and+field Добавил в forum_info.cfg строчку: Код: "FORUM_EMAIL" => [25, 'string', 100 ], | затем убрал все свои "модификации" из ikonboard.cgi - и все заработало! -- Учитесь на чужих ошибках - и не повторяйте их. |