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

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

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

Регистрация: Sep 2011
Сообщений: 5
По умолчанию Загрузка картинок по URL

Привет. Такая проблема, делаю загрузчик картинок на сервер для сайта. Картинку можно загрузить двумя способами: со своего компа и по внешнему урл. Если запускать флешку с компа, то всё отлично работает. Но когда загружаю на сервер и пробую там загрузить картинку по урл, то картинка не показывается. Сам процесс загрузки есть, но после загрузки картинка не отображается.
Однако, картинки с моего домена загружаются и показываются как надо, с чужих доменов не хочет.

Код AS3:
private function _handleMouseEvent ( evt : MouseEvent ) : void
		{
			switch ( String ( evt.target.name ))
			{
				case "browse" :				
					_fileRef = new FileReference ( ) ;
					_fileRef.browse ( [_fileFilter] ) ;
					_fileRef.addEventListener ( Event.SELECT, _onImageSelect ) ;
					trace ( "Browse" ) ;
 
				case "URLBtn":
				    if(_URLTxt.text != ""){
						_loader = new Loader();
						LC = new LoaderContext(true,null,null);
						_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, _onImageLoaded);
						_loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
						_loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, handlerForIOError);
						_loader.load( new URLRequest(_URLTxt.text),LC);
						filename = _URLTxt.text.substring(_URLTxt.text.lastIndexOf("/")+1,_URLTxt.length);
					}
				break;
			}
		}
 
private function _onImageLoaded ( evt : Event ) : void // загрузка
		{
			if(_bitmap) removeChild(_bitmap);
			_bitmap = Bitmap ( evt.target.content ) ;
 
			_bitmap = newResizeBitmap(_bitmap, MAX_WIDTH, MAX_HEIGHT);
			_bitmap.smoothing = true;
			_bitmap.x = 5;
			_bitmap.y = _browseTxt.y + _browseTxt.height + _URLTxt.height + 15;
			addChild(_bitmap);
 
	        //-- saving
			trace ( "Start saving"  );
 
			// Create saver instance
			var imageSaver:ImageSaver = new ImageSaver( "http://xn--80apaani4adaf.xn--p1ai/upload_pic.php" );		
 
			imageSaver.addEventListener ( Event.COMPLETE, onSaveComplete );
			imageSaver.addEventListener ( IOErrorEvent.IO_ERROR, onSaveError );
 
			// Save bitmap as JPG with red background in low JPG quality (15)
			imageSaver.save ( _bitmap, filename, 0xFF000000, 80 );
 
		}

Старый 26.09.2011, 17:51
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 2  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Не подписались на SecurityError, а в нем вся соль ;о)
поиск по crossdomain и SecurityError
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 26.09.2011, 18:04
kenji вне форума Посмотреть профиль Отправить личное сообщение для kenji Найти все сообщения от kenji
  № 3  
Ответить с цитированием
kenji

Регистрация: Sep 2011
Сообщений: 5
Цитата:
Сообщение от GBee Посмотреть сообщение
Не подписались на SecurityError, а в нем вся соль ;о)
поиск по crossdomain и SecurityError
есть crossdomain следующего содержания:
Код:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE cross-domain-policy SYSTEM \"http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd\">
<cross-domain-policy>
<allow-access-from domain=\"*\" to-ports=\"80\"/>
</cross-domain-policy>
а толку
Флешка описана так:
Код:
<object id="FlashID" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="600" height="600">
  <param name="movie" value="">
  <param name="quality" value="high">
  <param name="wmode" value="opaque">
  <param name="swfversion" value="6.0.65.0">
  <param name="prodID" value="<?=$prodID?>">
  <param name='AllowScriptAccess' value='always'/> 
  <!-- This param tag prompts users with Flash Player 6.0 r65 and higher to download the latest version of Flash Player. Delete it if you don’t want users to see the prompt. -->
  <param name="expressinstall" value="Scripts/expressInstall.swf">
  <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. -->
  <!--[if !IE]>-->
  <object type="application/x-shockwave-flash" data="Loader/BitmapLoader.swf" width="600" height="600">
    <!--<![endif]-->
    <param name="prodID" value="<?=$prodID?>">
    <param name="quality" value="high">
    <param name="wmode" value="opaque">
    <param name="swfversion" value="6.0.65.0">
    <param name="expressinstall" value="Scripts/expressInstall.swf">
    <param name='AllowScriptAccess' value='always'/> 
    <embed src="Loader/BitmapLoader.swf" quality="high" flashvars="prodID="<?=$prodID?>"" width="600" height="600" align="left" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">
    <!-- The browser displays the following alternative content for users with Flash Player 6.0 and older. -->
    <div>
      <h4>Content on this page requires a newer version of Adobe Flash Player.</h4>
      <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" width="112" height="33" /></a></p>
    </div>
    <!--[if !IE]>-->
  </object>
  <!--<![endif]-->
</object>

Старый 26.09.2011, 18:35
Андрей911 вне форума Посмотреть профиль Отправить личное сообщение для Андрей911 Найти все сообщения от Андрей911
  № 4  
Ответить с цитированием
Андрей911
 
Аватар для Андрей911

Регистрация: Jun 2011
Сообщений: 127
Ну да если вы пытаетесь подступиться к Bitmap с не вашего домена, то выдаст SecurityError.
А зачем вам это? Если надо изменить размер и показать, то это можно сделать и с Loader (_loader.width и _loader.height).
А если надо сохранить на сервере картинку в другом размере, то кидайте туда ссылку и качайте ее с помощью PHP. А там уже обрабатывайте.

Старый 26.09.2011, 18:46
kenji вне форума Посмотреть профиль Отправить личное сообщение для kenji Найти все сообщения от kenji
  № 5  
Ответить с цитированием
kenji

Регистрация: Sep 2011
Сообщений: 5
Цитата:
Сообщение от Андрей911 Посмотреть сообщение
Ну да если вы пытаетесь подступиться к Bitmap с не вашего домена, то выдаст SecurityError.
А зачем вам это? Если надо изменить размер и показать, то это можно сделать и с Loader (_loader.width и _loader.height).
А если надо сохранить на сервере картинку в другом размере, то кидайте туда ссылку и качайте ее с помощью PHP. А там уже обрабатывайте.
Качать картинку в 6 мб для того, чтобы сохранить её в 60 кб это не разумно и не удобно. Поэтому и воспользовался флешем, чтобы сжать картинку на машине и потом отправить на сервак.

Флешка должна загружать картинку по урл, что мне для этого сделать?

Старый 27.09.2011, 09:20
Андрей911 вне форума Посмотреть профиль Отправить личное сообщение для Андрей911 Найти все сообщения от Андрей911
  № 6  
Ответить с цитированием
Андрей911
 
Аватар для Андрей911

Регистрация: Jun 2011
Сообщений: 127
Я вот тут тему видел как обойти ограничения с фалом политики http://www.flasher.ru/forum/blog.php?b=208. Хотя сам честно еще не пробовал

Старый 27.09.2011, 17:54
kenji вне форума Посмотреть профиль Отправить личное сообщение для kenji Найти все сообщения от kenji
  № 7  
Ответить с цитированием
kenji

Регистрация: Sep 2011
Сообщений: 5
Цитата:
Сообщение от Андрей911 Посмотреть сообщение
Я вот тут тему видел как обойти ограничения с фалом политики http://www.flasher.ru/forum/blog.php?b=208. Хотя сам честно еще не пробовал
Здесь то что нужно, но работает так же((

Цитата:
А не работает во всех браузерах?
Я пробовал фф и хром.

Цитата:
На сервере права выставлены правильно?
Какие именно права?

Старый 27.09.2011, 09:34
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 8  
Ответить с цитированием
goodguy
Banned

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
А не работает во всех браузерах?

Старый 27.09.2011, 10:52
carrotoff вне форума Посмотреть профиль Отправить личное сообщение для carrotoff Найти все сообщения от carrotoff
  № 9  
Ответить с цитированием
carrotoff
 
Аватар для carrotoff

Регистрация: May 2010
Сообщений: 543
На сервере права выставлены правильно?
__________________
Вы грабите бедных людей. Парень со свирелью накажет вас. Хонгильдон (с)

Старый 27.09.2011, 17:55
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 10  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Цитата:
есть crossdomain следующего содержания:
Где он есть? Откуда картинки качаете?
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

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

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

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


 


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


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