Использование PHP из Flash для отправки изображения и текста по электронной почте - PullRequest
1 голос
/ 16 июня 2011

У меня возникли проблемы с объединением двух вещей, отправкой текстовых переменных из флэш-памяти и изображения из флэш-памяти.Вот что я делаю для отправки изображения по электронной почте:

private function emailImage(imageToSend:MovieClip):void {
            trace("Sending Email");
            var data1:BitmapData = new BitmapData(imageToSend.width, imageToSend.height); 
            data1.draw(imageToSend);

            var en:JPGEncoder = new JPGEncoder(80);
            var bArray:ByteArray=   en.encode(data1);

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

            var request:URLRequest = new URLRequest();
            request.requestHeaders.push(header);
            request.url = "http://192.168.1.117/mail.php";
            request.method = URLRequestMethod.POST;
            request.data = bArray;

            var loader:URLLoader = new URLLoader();
            loader.dataFormat = URLLoaderDataFormat.BINARY;
            loader.addEventListener(Event.COMPLETE, MailCompleteHandler);
            try
            {
                loader.load(request);
            }
            catch(error:Error)
            {
                trace("Unable to load URL");
            }
        }

И для отправки текстовой переменной по электронной почте я делаю это:

private function sendDataDB(Path:String) {
            var urlRequest:URLRequest = new URLRequest(Path);
            var loader:URLLoader = new URLLoader;
            urlRequest.method = URLRequestMethod.POST;
            var vars:URLVariables = new URLVariables;
            vars.cardID = cardID;
            vars.userName = userName;
            urlRequest.data = vars;
            loader.dataFormat = URLLoaderDataFormat.TEXT;
            loader.addEventListener(Event.COMPLETE,userDataStored);
            loader.load(urlRequest);
        }

Но как мне сделать то и другое, я хочу отправить какой-нибудь текстбудет меняться для каждого пользователя, который будет использоваться в качестве основной части текста и адреса электронной почты, а также отправлять картинку для прикрепления.

Спасибо

РЕДАКТИРОВАТЬ: Будет ли работать, чтобы добавить данные в конецURL:

request.url = "http://192.168.1.117/mail.php";

Не знаете, как это сделать, правильный формат для URL или как его прочитать на стороне PHP.

1 Ответ

1 голос
/ 16 июня 2011

Да, решением будет отправить переменные в виде GET вместе с изображением в виде POST.Добавьте переменные в конец URL, например, "http://192.168.1.117/mail.php?cardID=" + cardID + "&userName=" + userName.

. В вашем PHP-файле есть глобальная переменная $ _ GET , которая будет содержать переменные, переданные через URL.

$cardID = $_GET["cardID"];
$userName = $_GET["userName"];

Если вам нужно больше подробностей, вы можете прочитать этот пост: Отправка byteArray и переменных в серверный скрипт одновременно .

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...