Получить изображение из IOS mknetwork на сервер php

Я отправляю изображение через MKnetwork на сервер php... на стороне php изображение получено в $_POST вместо $_FILES... вот мой код со стороны ios

UIImage *image = [UIImage imageWithContentsOfFile:fullImgPath];// fullpath contains the path of image
NSData *imageData = UIImageJPEGRepresentation(image, 0.0);

MKNetworkEngine *engine=[[MKNetworkEngine alloc]initWithHostName:nil];

NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
[dict setValue:imageData forKey:@"uploadedfile"];
NSString *url=@"http://ilogiks.co.uk/demo/image/upload.php";
MKNetworkOperation *op=[engine operationWithURLString:url params:dict httpMethod:@"POST"];

Со стороны php

echo "POST";
var_dump($_POST);
echo "FILES";
var_dump($_FILES);

$ _FILES показывает пустое изображение, а $_POST показывает следующий ответ

array(1){
["uploadedfile"]=>
string(50523) "<ffd8ffe0 00104a46 49460001.............

Я хочу, чтобы изображение было получено в $ _FILES, чтобы я мог сохранить его или, если есть другое решение, возможно? пожалуйста помоги

1 ответ

Решение

Mknetwork отправляет изображение в шестнадцатеричном формате по почте, поэтому вам нужно получить его от почты и записать в новом файле в следующем формате.

$img = $_POST['uploadedfile'];
$img = str_replace("<","",$img);
$img = str_replace(">","",$img);
$img = str_replace(" ","",$img);
$img = pack("H*", $img);
$file = "img.png";
$f = fopen($file,'wb');
fwrite($f, $img);
fclose($f);
Другие вопросы по тегам