PDA

Просмотр полной версии : Динамический url у HTTPService


chata
22.11.2009, 03:47
Здравствуйте, пишу соединение с базой через php. С базой соединяется хорошо, но вот у меня есть linkbutton, при нажатии которых, должен обработаться нейкий запрос и соответственно на выходе уже другой файл, т.е. и отображение результата уже другое.
Если просто сказать, то якобы поиск.

В чем вопрос, как это сделать лучше всего? Или может возможно передать в url записать что то типо url={url_text}, где url_text будет менять свое значение в зависимости от линка?

Aloran
23.11.2009, 14:56
url можно задавать в теле функции (в твоем случае в обработчике нажатия кнопки).
Но не забывай, что у тебя будет только один обработчик у HTTPService. Я обычно заважу спец переменную типа id_script и по его значению уже обрабатываю результат скрипта по разному в зависимости от возвращающихся значений.

chata
28.11.2009, 23:54
Aloran, а не мог бы привести пример? А то не совсем поняла как это работает

Aloran
29.11.2009, 13:23
Aloran, а не мог бы привести пример? А то не совсем поняла как это работает

Ну вот кусок из моей проги. Я там многое потер. Оставил самое важное)
<?xml version="1.0" encoding="utf-8"?>
<mx:Module layout="absolute" width="1000" height="740" xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="onCreationComplete()">
<mx:Script><![CDATA[

private var param:Object; // список параметров для скриптов обнулять перед созданием новых
private var id_script:uint; // код скрипта который используется в данный момент (1 - regout.php, 2 - get_spell.php, 3 - ava_mags.php)

private function avaAdr():void { // Загрузка списка адресов картинок
scriptRequest.url = "php/ava_mags.php";
id_script = 3;
param = undefined; // обнуляем параметры
param = {}; // создаем новый объект иначе ошибка
param["vid_ava"] = sex_mag; //
scriptRequest.resultFormat = "xml";
scriptRequest.send(param);
}

private function onResult(e:ResultEvent):void {
switch (id_script) { // обработка для каждого скрипта своя
case 1: // regout.php

break;
case 2: // get_spell.php

break;
case 3: // ava_mags.php

break;
}
}

]]></mx:Script>
<mx:HTTPService id="scriptRequest" useProxy="false" method="POST" result="onResult(event)"/>
</mx:Module>

chata
29.11.2009, 13:41
Спасибо, буду пробовать