Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 10.05.2011, 12:40
zaero33 вне форума Посмотреть профиль Отправить личное сообщение для zaero33 Найти все сообщения от zaero33
  № 1  
Ответить с цитированием
zaero33

Регистрация: May 2011
Сообщений: 9
По умолчанию AS3 + php: "тихая" отправка изображения на сервер.

Добрый день.
Ситуация у меня такая: пользователь в swf редактирует изображение, после этого жмет "отправить". По нажатию картинка должна отправляться на сервер. Для этого пользуюсь кодом из примера:
Код AS3:
import flash.display.*;
import flash.net.URLRequest;
import flash.net.URLVariables;
 
function savePaint(event:Event) {
	var data_bmp:BitmapData = new BitmapData(canvas.width,canvas.height);
	data_bmp.draw(canvas);
	var pngStream:ByteArray = PNGEncoder.encode(data_bmp);
 
	var header:URLRequestHeader = new URLRequestHeader ("Content-type", "application/octet-stream");
	var url_req:URLRequest = new URLRequest("http://MyHost.ru/img_saver.php");
	url_req.requestHeaders.push(header);
	url_req.data = pngStream;
	url_req.method = URLRequestMethod.POST;		
	navigateToURL(url_req);
}
PHP код:
<?php
$image_data 
$GLOBALS["HTTP_RAW_POST_DATA"] ;
$filename_to_save "canvas.png";

if(isset(
$image_data)){
    
$png_file fopen($filename_to_save"wb") or die("File not opened!");
    if(
$png_file){
          
set_file_buffer($png_file20);
          
fwrite($png_file$image_data);
          
fclose($png_file);
    }
}       
?>
Все работает как нужно, картинка отправляется, однако при отправке URL обработчика (http://MyHost.ru/img_saver.php) открывается в новой вкладке. Мне же нужно, чтобы картинка тихо укладывалась на сервер без открытий в браузере дополнительных URL'ов.

Нашел на форуме аналогичную проблему:
http://www.flasher.ru/forum/showthre...E5%F0%E2%E5%F0
Человеку посоветовали использовать URLLoader. Попытался использовать его вместо navigateToURL вот так:
Код AS3:
 var u:URLLoader= new URLLoader();
 u.load( url_req );
однако ничего не изменилось - http://MyHost.ru/img_saver.php по прежнему открывается в новой вкладке.
Подскажите пожалуйста, что я делаю не так? Как "тихо" отправить изображение на сервер?

Создать новую тему   Часовой пояс GMT +4, время: 18:12.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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