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

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

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

Регистрация: May 2009
Сообщений: 20
По умолчанию Сохранение JPG через браузер

помогите разобраться.
нашёл немало тем по вопросу кодирования и сохранения Jpg (png) из bitmap dat'ы, но везде рассматривается вариант с использованием fopen/fwrite, т.е. запись напрямую на диск. здесь для мня всё понятно и работает. но меня интересует вариант сохранения через браузер (пример из книги Learning action script 3.0):

Код AS3:
function onClick(evt:MouseEvent):void{
	var jpgEncoder:JPGEncoder= new JPGEncoder();
	var bArray:ByteArray= jpgEncoder.encode(bmd);// bmd - готовая bitmap data
 
	var uR:URLRequest= new URLRequest("http://localhost/save-file.php?name=1.jpg");
	uR.data= bArray;
	uR.method= URLRequestMethod.POST;
	uR.contentType= "application/octet-stream";
 
	navigateToURL(uR, "_blank");
}
PHP код:
<?php
if (isset($GLOBALS["HTTP_RAW_POST_DATA"])) {
    
$jpg $GLOBALS["HTTP_RAW_POST_DATA"]; 
    
$img $_GET[‘img’];
    
header("Content-Type: image/jpeg");
    
header("Content-Disposition: attachment; filename=".$img);
    echo 
$jpg;
} else {
    echo 
"Encoded JPEG information not received."; } ?>
в итоге открывается новая вкладка в браузере:
Код:
http://localhost/save-file.php?name=1.jpg?%D1%8F%D0%A8%D1%8F%D0%B0
но условие не срабатывает:
Код:
Encoded JPEG information not received.
т.е. $GLOBALS["HTTP_RAW_POST_DATA"] остаётся пустой. если же вместо navigateToURL использовать URLLoader (и fopen/fwrite в php) то пишется нормально.
подскажите где затык?
спасибо

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

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

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


 


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


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