Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

juniormatrix

Envio de duas imagens por BitmapData

Recommended Posts

Olá! Eu novamente...

 

Achei este código na web:

 

 

import com.adobe.images.JPGEncoder;

import flash.events.Event;

import flash.net.URLLoader;

import flash.net.URLRequestHeader;

import flash.net.URLRequest;

 

bt_salvarImagem1_mc.buttonMode = true;

 

function onSavePictureButtonClicked1(event:MouseEvent):void

{

var jpgSource:BitmapData = new BitmapData(img_mc.width,img_mc.height);

jpgSource.draw(img_mc);

var jpgEncoder:JPGEncoder = new JPGEncoder(85);

var jpgStream:ByteArray = jpgEncoder.encode(jpgSource);

 

var header:URLRequestHeader = new URLRequestHeader("Content-type","application/octet-stream");

var loader:URLLoader = new URLLoader();

var myRequest:URLRequest = new URLRequest("http://.../saveJPG.php");

myRequest.requestHeaders.push(header);

myRequest.method = URLRequestMethod.POST;

myRequest.data = jpgStream;

loader.load(myRequest);

loader.addEventListener(Event.COMPLETE,saved);

 

function saved(e:Event)

{

...aqui inseri scripts para envio das informações para e-mail...

}

}

bt_salvarImagem1_mc.addEventListener(MouseEvent.CLICK, onSavePictureButtonClicked1);

 

 

 

Fiz umas alterações e usei ele para enviar uma imagem do MovieClip para o servidor.

 

Funciona muito bem, mas teria como enviar DOIS movieclips ao mesmo tempo. Tem como?

 

Se alguém puder me ajudar, fico grato!

 

 

Ninguém?

 

Precisava saber se tem como. Se tiver, vou buscar saber como faz.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá

 

Agradeço inicialmente pela ajuda.

 

Tentei fazer aqui, mas não deu nada certo. Será que é pedir muito pra me dar um exemplo de como fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que você tem que fazer é juntar as duas imagens:

myRequest.data = jpgStream_1+"#"+jpgStream_2;

E no servidor:

...

$imagens_arr = explode( "#", $imagens );

salvar( $imagens_arr[ 0 ] );
salvar( $imagens_arr[ 1 ] );

...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá novamente.

 

Depois de semanas retorno à este tópico.

 

Bem, não consegui o que precisava. Tentei varias vezes e não deu certo.

 

Se alguem puder fazer para mim, ficaria grato. Sei que a política de fóruns é o aprendizado, mas estou precisando muito disso e estou perdendo muito tempo nos testes.

 

Segue abaixo um trecho do AS e o PHP que estou usando.

 

 

Trecho ACTIONSCRIPT:
...
function enviaDadosParaPHP():void
{
mostraMensagemAviso("ENVIANDO ORÇAMENTO. AGUARDE...");
variaveis = new URLVariables();
variaveis.referenciaCamisaPhp = MovieClip(root).uniforme_mc.referenciaTxt.text;
variaveis.corCamisaPhp = MovieClip(root).corCamisa;
variaveis.referenciaCalcaoPhp = MovieClip(root).uniforme_mc.referenciaCalcaoTxt.text;
variaveis.corCalcaoPhp = MovieClip(root).corCalcao;
variaveis.referenciaGoleiroPhp = MovieClip(root).goleiro_mc.referenciaGoleiroTxt.text;
variaveis.corCamisaGoleiroPhp = MovieClip(root).corCamisaGoleiro;
variaveis.infoPhp = infoTxt.text;
//ENVIO DA IMAGEM DO SIMULADOR DA CAMISA
var jpgSource:BitmapData = new BitmapData(MovieClip(root).uniforme_mc.width,MovieClip(root).uniforme_mc.height);
jpgSource.draw(MovieClip(root).uniforme_mc);
var jpgEncoder:JPGEncoder = new JPGEncoder(90);
var jpgStream:ByteArray = jpgEncoder.encode(jpgSource);
var header:URLRequestHeader = new URLRequestHeader("Content-type","application/octet-stream");
var Load:URLLoader = new URLLoader();
//sends jpg bytes to saveJPG.php script
var myRequest:URLRequest = new URLRequest("http://www.siteaqui.com.br/site/simulador/saveJPG.php");
myRequest.requestHeaders.push(header);
myRequest.method = URLRequestMethod.POST;
myRequest.data = jpgStream;
Load.load(myRequest);
Load.addEventListener(Event.COMPLETE,saved);
function saved(event:Event):void
{
MovieClip(root).imagemEnviadaUniforme = (Load.data);
variaveis.imagemEnviadaUniformePhp = MovieClip(root).imagemEnviadaUniforme;
urlPhp.method = URLRequestMethod.POST;
urlPhp.data = variaveis;
loader = new URLLoader();
loader.addEventListener(Event.COMPLETE, quandoEnviadoMensagem);
loader.addEventListener(IOErrorEvent.IO_ERROR, quandoHouverErroNoEnvio);
loader.load(urlPhp);
}
}
//Função de evento, mostra ao usuário que a mensagem foi enviada com sucesso.
function quandoEnviadoMensagem(e:Event):void
{
mostraMensagemAviso("PEDIDO DE ORÇAMENTO ENVIADO COM SUCESSO!");
iniciatempoMensagemDeAviso();
}
//Função de evento, mostra ao usuário que houve algum erro durante o envio.
function quandoHouverErroNoEnvio(e:IOErrorEvent):void
{
mostraMensagemAviso("SURGIU UM ERRO! TENTE NOVAMENTE.");
iniciatempoMensagemDeAviso();
}
...
Arquivo saveJPG.php:
<?php
if ( isset ( $GLOBALS["HTTP_RAW_POST_DATA"] ))
{
//the image file name
$fileName_1 = time().'_'.rand(10,99).".jpg";
// get the binary stream
$im = $GLOBALS["HTTP_RAW_POST_DATA"];
//write it
$fp = fopen("imagens_pedidos/".$fileName_1, 'wb');
fwrite($fp, $im);
fclose($fp);
//echo the fileName;
echo $fileName_1;
}
?>
Ficarei muito grato por qualquer ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.