PDA

Просмотр полной версии : помогите тупому, про выгрузку данных скажем в PHP


Capitan Nemo
21.12.2005, 19:43
не пинайте ногами, понимаю что это просто и спрашивали небось уже много кто, и я даже яндекс читал но я ТУПОЙ во флеш...
так вот случилось что мне достался уже сделанный флеш тока нет одного поля и его работы... вроде не сложно но я не понимаю...

итак сама ситуация
ФЛЕШ там всякое крутится вертится... и есть формочка квадратная и рядом кнопка GO
соотвественно в формочку надо написать слово, а на кнопку нажать... типа поиск из флеша....
далее мне надо чтобы СЛОВО или СЛОВА из формы передались в запросе к странице php или POST или GET лучше POST но все равно впрочем....
типа чтобы после нажатия GO
открылась страница /search.php?text=KABAN

вот... примерно и все...

чтоя смог, я сделал форму это у нас текст с INPUT присвоил ему имя VAR имя myText
сделал кнопку GO как -Movie Clip и вставил туда следующий код


on(release) {
var myLevel = 3;
getURL("search.php", "_blank", "GET");
}


тут переменная просто так для проверки

что я вижу выполня скрипт
search.php?myLevel=3

все.... и никак не могу сделать чтобы перменная текста стала в строке, что нужно дописать? может кто-т пришлет код простой, как валенок как у меня примерно чтобы я мог понять....

СПАСИБО!

пользовался я статьей http://www.webarchive.ru/index.php?topic=flash&page=articles3

Antares
21.12.2005, 20:22
Вообще если надо открыть непосредственно страницу, причем передавать надо постом (авторизация и т.п.), я бы сделал так:


/**
*
* @usage submit(myTextArea, 'http://www.novemberain.com/test/', {from:'Michael', subj:'That works fine to me...'}, 'POST', true, myOnLoadHandler);
* @param ta_name Имя объекта TextArea / TextInput / TextField, содержащего инфу, которую надо передать
* @param url URL
* @param [method] HTTP-метод
* @param [additionalData] Объект, __все__ свойства которого будут переданы (и затем, соответственно, найдены в массивах $_POST / $_GET)
* @param [handle] Обрабатывать ли ответ сервера
* @param [handler] Функция-обработчик ответа
* @return Булева величина. false в случае, если не указан URL
*/
function submit( ta_name:String,
url:String,
additionalData:Object,
method:String,
handle:Boolean,
handler:Function ) : Boolean
{
// Если не указано, куда отсылать -- возвращаем false
if(!url) return false;

// Объект, передающий данные
var myLV:LoadVars = new LoadVars();

// Сохраняем в нем переменные, которые надо передать
myLV.text = this[ta_name].text;
//
for(var key in additionalData)
{
myLV[key] = additionalData[key];
}

// Если метод не определен, передан неверно или равен null, используем GET, т.к. среда разработки не работает с POST (что и понятно, т.к. заголовки запроса не отправляются)
if(!method || !(method == "GET" || method == "POST")) method = 'GET';

if(handle)
{
myLV.onLoad = handler;
myLV.sendAndLoad(url, myLV, method);
} else {
myLV.load(url);
}

// Отправили
return true;
}


и затем в php, получив нужное в массиве $_POST и проделав нужные манипуляции без вывода в браузер, уходил бы на нужную страницу при помощи хедера Location.

Capitan Nemo
21.12.2005, 21:44
Эээ мне бы пример тогда...
вроде как понятно что написано но не понятно куда это сувать и какие где имена должны быть и с чем совпадать...

я как бы flash знаю так сказать мало....очень мало....

Antares
21.12.2005, 21:50
В листинге выше есть Javadoc, в нем -- тэг @usage. А в php прогони $_POST через foreach, многое сразу станет ясно ;)