Форум: "Основная";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
ВнизWeb-модули, странное поведение шаблона Найти похожие ветки
← →
Megabyte © (2006-12-27 14:54) [0]Есть 2 события Веб-модуля:
1)Twm_status.WebModule1wai_stateAction - событие самого модуля по вызову действия
2)Twm_status.pp_stateHTMLTag - событие TPageProducer на форматирование нестандартных тегов.
Я получаю с html-формы один параметр, и вывожу в шаблон 4 значения:текущую дату, входной параметр, еще 2 - выборка из базы по параметру.
Вот код методов:
var
...
param_imei : string;
...
procedure Twm_status.WebModule1wai_stateAction(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
param_imei := Request.QueryFields.ValueFromIndex[0];
Response.Content := pp_state.Content;
end;
procedure Twm_status.pp_stateHTMLTag(Sender: TObject; Tag: TTag;
const TagString: String; TagParams: TStrings; var ReplaceText: String);
var
br, st : string;
begin
if TagString = "curdate" then ReplaceText := DateToStr(now);
fdb_scrp.Connected := true;
ftr_state.Active := true;
fdst_state.ParamByName("imei").AsString := param_imei;
fdst_state.Prepare;
if TagString = "imei" then ReplaceText := param_imei;
fdst_state.Active := true;
br := fdst_state.FieldList.Fields[0].AsString;
{ if (TagString = "brmod") and (fdst_state.FieldList.Fields[0].AsString <> "")
then ReplaceText := br
else
ReplaceText := "null";
if (TagString = "status") and (fdst_state.FieldList.Fields[1].AsString <> "")
then ReplaceText := fdst_state.FieldList.Fields[1].AsString
else
ReplaceText := "null"; }
end;
1) Если запускать так, с закомментированным кодом, то 2 первых тега форматируются правильно.
Если же раскомментировать, то все теги формируются со значением null.
Это 1-я непонятка.
2) Я не уверен, что происходит выборка правильно в fdst_state
Но это же не должно влиять никак на форматирование остальных тегов???
Отдельно от ВЕБ-модуля уже все 100 раз протестировал, сам запрос работает правильно. Дело может быть в ординарных ковычках: но я уже и с ними пробовал, и без них...
2-я непонятка.
← →
Megabyte © (2006-12-28 09:17) [1]Закройте тему, как всегда всему виной невнимательность, по крайней мере по 1-му пункту...
← →
Megabyte © (2006-12-28 12:16) [2]Люди.
Такое вот дело.
Если я параметр беру из Request.QueryFields.QueryFields.Values["imei"], то запрос не выдает данные(возвращает пустой набор).param_imei := {chr(39) +} Request.QueryFields.Values["imei"] {+ chr(39)};
...
fdst_state.ParamByName("imei").AsString := param_imei;
Если я то же значение присваиваю явно параметру, то запрос возвращает нужное значение.fdst_state.ParamByName("imei").AsString := "352262010494193";
Создал обычное приложение, все проверил, все работает корректно;
Пробовал параметр в ковычках передавать и без(они там закомментированны);
Даже сравнивал длину и значения param_imei и 352262010494193 на предмет лишних пробелов, все норм.
Не понимаю, м.б. глюк какой в Дельфе?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.085 c