PDA

Просмотр полной версии : Форма + загрузка файла на сервер


GRiNGA
25.07.2008, 21:40
Здравствуйте,
задался целью создать форму отправки сообщения с возможностью загрузки файла.
Знаю, что файл аплоадится классом FileReference.
Знаю что переменные можно передать через LoadVariables.

А FileReference может передать переменные php скрипту и вернуть от него ответ, так как это делает LoadVariables?

Если нет, то как можно все ето дело совместить, чтоб из формы передавалось сообщение + загружался файл на php скрипт, и потом от php приходил ответ что все ОК?

darksranger
25.07.2008, 21:58
от php ответ может прийти через xml
сформируйте с помощью php ответ, в виде xml и прочитайте его с помощью класса xml, в flash

kutuzov
26.07.2008, 00:15
либо fileRef.upload("upload.php?param1=text") если не критична длина сообщения

либо сначала залить файл, скрипт выдаст вам на событие onUploadCompleteData данные о нахождении файла, сразу после этого вы с помощью LoadVariables отсылайте сообщение, к которому прилагайте путь к файлу.
Если боитесь выдать путь файла обратно флешу, то можно выдавать идентификатор, который например, хранится в БД или текстовом файле, затем соответственно отдавать этот идентификатор вместе с сообщением

Double
26.07.2008, 08:37
от php ответ может прийти через xml
сформируйте с помощью php ответ, в виде xml и прочитайте его с помощью класса xml, в flash

с помощью sendAndLoad можно совершенно спокойно получить данные от php без какого либо xml.

darksranger
26.07.2008, 08:44
имеется виду формат!!!, передаваемых данных в flash, а не создание xml ....

Double
26.07.2008, 08:56
...от php приходил ответ что все ОК?

ну да, для этих данных жизненно необходим xml.

GRiNGA
26.07.2008, 13:54
от php ответ может прийти через xml
сформируйте с помощью php ответ, в виде xml и прочитайте его с помощью класса xml, в flash

То есть нужно создавать файл xml на сервере?

GRiNGA
26.07.2008, 14:09
... скрипт выдаст вам на событие onUploadCompleteData данные о нахождении файла...

А с какой версии Flash поддерживается ето событие? Я что-то не нашел его в хелпе...

kutuzov
26.07.2008, 14:43
GRiNGA,
AS 2.0
ActionScript classes > FileReference (flash.net.FileReference) > onUploadCompleteData
onUploadCompleteData = function(fileRef:FileReference, data:String) {}

GRiNGA
26.07.2008, 15:29
GRiNGA,
AS 2.0
ActionScript classes > FileReference (flash.net.FileReference) > onUploadCompleteData
onUploadCompleteData = function(fileRef:FileReference, data:String) {}

Что-то у меня нету... Flash 8.0 AS 2.0
привожу скриншот хелпа.
Может запостите что там написано в хелпе про ето событие...

etc
26.07.2008, 23:39
Это событие доступно в Flash Player 9 с какого-то там билда.

Double
27.07.2008, 08:53
http://livedocs.adobe.com/flash/9.0/main/00001674.html

GRiNGA
27.07.2008, 15:53
Про FlashPlayer я понял.
А сам Flash тоже нужен 9-й получается? и соответственно АС3?

etc
28.07.2008, 02:06
А сам Flash тоже нужен 9-й получается? и соответственно АС3?

9-ый — нужен. AS3 — нет.