Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Пытаюсь разобраться с PHP (http://www.flasher.ru/forum/showthread.php?t=40944)

Chas 15.12.2002 14:53

Пытаюсь разобраться с PHP
 
Ребят, пытаюсь разобраться одновременно с php и с Flash.
Значит вчера закачал апач, 4ый пшп, все это дело настроил. Теперь в htdocs все index-ы грузятся (пхп в том числе).
Значит теперь попытался разобраться с этим делом во шлешах.
Создал мультик, с одним фреймом, кинул в него одно динамическое поле, назвал fTemp, написал в AS loadVariablesNum ("temp.php",0); Написал в temp.php:

<?echo "fTemp=hello world!!!"; ?>
Кинул все это в апач, запустил, все отработало.
Решил продвинуть. Кинул в тот же мульт еще одно поле, назвал fTemp2. В AS добавил fTemp2=tempo; а в temp.php изменил echo:
echo "fTemp=hello world&tempo=9090";
Переименовал мульт, кинул его в другую папку. Запустил. Первая строка как надо, вторая - пуста. Почемууу!

А еще вопрос, как передавать данные в php. Он что же передает все переменные когда пишешь, передать по post. А если мне надо передать скажем всего три, а у мя их штук двадцать. Кстати, когда написал в temp.php ...fTemp2=9090"; ?> то он отработал и вторую строчку показал. Так что-же он передает-получает данные только в динамических полях, получается.
Что такое level в loadVariablesNum. Что означает там число 0. Это уровень мультика с которого имеется доступ к загруженным переменным??

З.Ы. народ, если не лень, ответьте, а,,

Iv 16.12.2002 11:40

во втором случае не работает потому, что ты сделал присваивание значения переменной до того, как ее получил.

Вообще технология загрузки переменных выглядит следующим образом:
1) Для этих целей пользуется объект LoadVars или XML
2) Такой объект создается динамически перед отправкой данных:
my_sender = new LoadVars()
также перед отправкой в него втыкаются переменные, которые нужно отправить на сервак.
3) в этих объектах можно сделать прелодеры, поскольку имеются функции getBytesLoaded иgetBytesTotal
4) Можно точно отследить момент прихода данных с сервера поскольку имеестя событие onLoad, конструкция использования такова:
Код:

my_sender.onLoad = function (success){
if(!success){
// данные не пришли, вызываем обработчик ошибок:
this.errorHandler()
return
}
// данные пришли, вызываем обработчик данных
this.dataHandler()
}

И еще пару моментов:
не юзай разом пшп и флэш
если делаешь флэш, для простоты и уверенности в том, что всё впорядке получай данные их обычного текстовика, и только потом, когда добъешься нужного результата начинай делать пшп. В противном случае запаришься переделывать или пшп под флэш или флэш под пшп - заранее никогда неизвестно что понадобытся от сервака и наоборот.

Тести флэш на получение внешних данных эмулируя реальную сеть. Это легко сделать с помощью XatWebSpeedOptimiser
(www.xat.com). В противном случае на реальном сайте может глючить, а у тебя локально проблем не будет - запаришься искать ошибку. Опять же - тестить придется на текстовике а не на пшп.

iLoveYou 16.12.2002 12:02

Цитата:

не юзай разом пшп и флэш
если делаешь флэш, для простоты и уверенности в том, что всё впорядке получай данные их обычного текстовика, и только потом, когда добъешься нужного результата начинай делать пшп. В противном случае запаришься переделывать или пшп под флэш или флэш под пшп - заранее никогда неизвестно что понадобытся от сервака и наоборот.
2BitSky из текстовика данные получать, несомненно, проще и приятней, но обычно требуются более сложные задачи: например, загрузить динамически сгенерированные данные или элементы базы данных, или записать данные, сохранить их в файле и т.п. В таком случае нужны штуки, вроде PHP, Perl... И по моим наблюдениям PHP - все-таки оптимальный вариант для таких задач ввиду своей простоты и неприхотливости. ;)

2Chas я ж тебе, кажется, посылал исходник. Что-то непонятно?

lexass 16.12.2002 12:04

Цитата:

В противном случае на реальном сайте может глючить, а у тебя локально проблем не будет - запаришься искать ошибку.
Странно, у меня никогда ничего не глючило... =)

Iv 16.12.2002 12:34

2Sergey"iLoveYou"
есть такой мудрый принцип: разделяй и властвуй
разные задачи нужно сначала решать отдельно, и только добившись работоспособности их объединять, используя ранее определенный интерфейс.
Если пытаться решить всё разом, то довольно легко запутаться кто виноват, что тараканы в проекте.

Chas 16.12.2002 17:45

2Sergey"iLoveYou"
да я тогда еще апач себе не поставил, да и письмо, да и куда-то в темп закинул твой файлик, а меня там мусора было на 3 гига, сегодня после универа сидел, чистил.
У меня пятый флеш. У нас город почти деревня. У многих даже не пятый експлорер, а только четвертый (особенно в офисах), но люди уже как-то не очень доверяют, когда появляется окно загрузки дополнительного плуга. Поэтому буду писать на 5ом и соот. использовать хмл. Кстати, я с ним первый раз столькнулся, придется еще и по нему инфу искать, что за зверь и с чем его едят.
Значит, просто если загружать с loadVariables практически нет возможности проверить сколько переменных загружено и сколько осталось. Но в хмл во флешах там я где-то видел функцию onLoad. Буду смотреть.
Bye

Iv 16.12.2002 18:15

Цитата:

Значит, просто если загружать с loadVariables практически нет возможности проверить сколько переменных загружено и сколько осталось.
- да есть такая возможность, просто на все вопросы все нормальные люди отвечают исходя из того, что у вопрошающего стоит текущая версия, если не указано иное.
А делается просто:
делаешь в руте пустой мувик и из него и вызываешь loadVariables или чаво нать. Естественно перед этим вначале его чистишь циклом for... in...:
Код:

for (var vars in _root.sender_loader_mc){
delete _root.sender_loader_mc[vars]
}

потом кидаешь в него нужные переменные со значениями.

Только учти, что в этом мувике для простоты лучше ничего не держать. Почистил - закинул переменные - отправил - тут же почистил - дождался новых переменных - обработал - почистил опять.

2 lexass
это потому, что ты такой умный.
странно что с таким умищем такие посты шлешь.

lexass 16.12.2002 18:38

2BitSky
 
1. зачем посылать и получать в одно и тоЖе место :rolleyes: (хотя это не запрещается)

2. и чем это текстовый файл лучше запроса к скрипту (хоть и при разработке) ???

3 зачем чистить все переменные там куда ты их получаешь ???

3.1. даже если это нУнО, зачем каким-то циклом ... ???

ЗЫ

4. мой ум обсуждать ненУнО :mad: (прав недавали...)

Iv 16.12.2002 19:00

1. безусловно, это зависит от конкретного случая, однако я обычно отдаю предпочтение такому способу по причине его 100% работоспособности при минимальных расходах.

2. Тем что в таком случае можно разрабатывать проект параллельно: один человек пишет серверную часть, второй клиентскую. Естественно предварительно договорившись об интерфейсе. При этом не зависят от багов друг друга. Есть еще ряд преимуществ, например получение переменных можно оттестить на XAT спид оптимайзере, на разных режимах, чего не сделать пользуя реальный сервер.

3. Это хороший стиль: нагадил-убери.

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

5. обсуждать что-ли нечего? :D
А право давали. Вот тока запамятовал статью конституции.

iLoveYou 16.12.2002 19:00

1.
Цитата:

Странно, у меня никогда ничего не глючило... =)
Никакой странности в этом нет, просто ручки не у всех прямые. (Я говорю это вообще, а не относительно некоторых участников этого топика! Не подумайте!)

2. 2BitSky
Цитата:

есть такой мудрый принцип: разделяй и властвуй
разные задачи нужно сначала решать отдельно, и только добившись работоспособности их объединять, используя ранее определенный интерфейс
Принцип мудр не всегда ;) Но с утверждением согласен.

3. 2Сhas
Цитата:

У нас город почти деревня
Я был там. Заносило... Нормальный город. :)

4. 2lexass c 2, 3.1 и 4 согласен.
Кстати, с наступающим юбилеем. 3000 - не фунт изюму... ;)


Часовой пояс GMT +4, время: 09:04.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.