![]() |
отправка переменных в php-скрипт
Господа, подскажите пожалуйста новичку... :) Суть проблемы - на _root существует несколько клипов, допустим trailer1,trailer2,... trailer10. Нужно отправить свойства каждого клипа _x, _y, скрипту php. Скрипт должен сохранить их в файл.
Я понимаю, что action script должен выглядеть примерно так? for (i=1; i<8; i++) { x = _root["trailer"+i]._x; y = _root["trailer"+i]._y; loadVariables("http://www.mysite.com/script.php?x,y", "", "POST"); } ...а можно ли переменные посылать не для каждого объекта, а сразу все? Прошу также помощи в "приемном" php-скрипте. Буду крайне благодарен! :) |
for(i=0; i<10; i++){
x+=_root["trailer"+i]._x+"::"; y+=_root["trailer"+i]._y+"::"; } потом соответственно грузишь всё это в пхп,потом пхп: $New="x="$x":::""y="$y; $filename="1.txt"; $fp = fopen( $filename,"w+"); fwrite($fp, $New, 80000); fclose( $fp ); вот! Наверное, возникает вопрос, а как потом это оттуда вытаскивать, вот ответ: грузишь в swf, потом: xar=x.split("::"); yar=y.split("::"); вот, вроде бы и всё! Доставать потом, как из массива! yar[i]! |
можно.. наверное... делаешь поле текстовое динмическое да еще и невидимое, заносишь туда все, что тебе необходимо (как строку) а в PHP потом еще разбиваешь на исходные составные части... немного извращенно, но должно работать
|
2K WebStudio, ОГРОМНОЕ СПАСИБО! Еще парочка маленьких нюансов :)
гружу в пхп я так? loadVariables("http://www.mysite.com/script.php?x,y", "", "POST"); Потом, зачем += ? x+=_root["trailer"+i]._x+"::"; Мне бы нужно чтобы в файле было что-то вроде x1=10,y1=10,x2=15,y2=23 допустим... И 2K WebStudio пожалуйста, если не затруднит, можно маленькие комментарии по коду php - а то вообще ничего не понятно :) |
1. Просто loadVariables("*.php", "GET/POST");// метод зависит от того, когда ты собираешься принимать переменные!
2. Так быстрее! x+=_root["trailer"+i]._x+"::"; получится: 132::15::235::5436:: потом это разобъётся вот на это: xar=new Array(132,15,235,5436); это делается строкой xar=x.split("::"); 3. #совмещает две переменные и делает вот так: x=21::34::325&y=35::35::5654 $New="x="$x"&""y="$y; #имя открываемого файла для записи $filename="1.txt"; #открытие файла $fp = fopen( $filename,"w+"); #запись в файл fwrite($fp, $New, 80000); #закрытие файла fclose( $fp ); |
На счет x+=_root["trailer"+i]._x+"::"; - понятно, хотя мне не нужно будет переменные грузиьт обратно в *.swf, мне нужно просто получить файл с этими переменными на сервере.
Ну это ладно. Главное - почему-то не работает - flash говорит Error opening URL "http://localhost/test.php" Apache вроде запущен... ??? |
Чувак!
Я бы на твоём месте вышел бы из флэша и запустил html! |
Вложений: 1
Торможу... Согласен! :) Только все равно не работает, в файл даже ничего не пишет. Посмотри исходник пожалуйста.
|
естественно, что не работает, так просто нельзя обращаться к php, он у тебя ничего не возвращает! PHP должен содержать что-то вроде:
PHP код:
|
н-да... с xml теперь совсем завал.... :(
|
не факт, что это должен быть XML, можно тоже самое написать, только как для обыкновенного loadVariables. Т.е. пишешь:
echo "переменнная=значение&..."; |
Вложений: 1
Твой пхп не робит
И вообще, я бы по-другому сделал отправку данных в пхп. Не буду объяснять, почему. Держи работающий пример. (с поправленым пхп) Если что непонятно - пиши. |
вообще-то это была не отправка, а получение данных от сервака.
|
2drOH
См вопрос.
Я не знаю, поему тебя унесло в получение данных, но по-моему, чувак хотел отправить данные скрипту пхп и записать их в файл на сервере. С его стороны запроса на получение данных не было. Хотя я с тобой отчасти согласен, что пхп скрипт должен вернуть флэшу хотя бы результат успешности выполнения записи в файл. И ты в корне не прав, что пхп обязятельно должен чего - то возвращать. Вовсе не обязательно. Ты прав насчет того, что лучший способ получить данные из скрипта во флэш - это хмл, но ты в своём примере не послал заголовок пхп: header("Content-type: application/xml; charset=windows-1251"); без него - плохо. Поверь мне! ;) 22kWebStudio: твой косяк - split разобъёт строку не на Array(132,15,235,5436); а на Array(132,15,235,5436,); то есть будет пустой элемент массива в конце. а этого нам не надо. Ну не красиво так. А, впрочем, пофиг! |
да, действительно, прошу прощения, надо писать:
header("Content-Type: text/xml"); echo "<?xml ....>" ... Просто насколько я понял, нужно послать данные в php, создать им файл, чтобы потом открыть его в swiff'е для дальнейшего использования, я просто предложил немного альтернативный подход - без создания файла... по-моему так быстрее. А как посылать данные вроде уже решили. :) |
да, действительно, прошу прощения, надо писать:
header("Content-Type: text/xml"); echo "<?xml ....>" ... Просто насколько я понял, нужно послать данные в php, создать им файл, чтобы потом открыть его в swiff'е для дальнейшего использования, я просто предложил немного альтернативный подход - без создания файла... по-моему так быстрее. А как посылать данные вроде уже решили. :) |
Часовой пояс GMT +4, время: 07:39. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2022, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.