从iOS上传PHP
很抱歉让你进退两难。我写iOS项目,刚刚开始学习PHP。这是我的问题。我开发了一个Xcode项目,将一张照片上传到一个web文件夹,该文件夹调用来自在线php脚本的响应。但是响应返回NSLog(@“未给出响应”)。我修改了php脚本,该脚本将照片从我的应用程序上载到主文件夹,创建一个随机文件名,然后将其复制到子文件夹中。这一切都很完美。但有两个主要问题。一个。上载的图像水平翻转(镜像)。还有两个。我试图在我的Xcode项目中获得响应,以返回到主图像上传位置的路径。这是我的密码 XCODE(上传非常好,但返回“无响应”,而不是“我的图像上传路径”从iOS上传PHP,php,ios,Php,Ios,很抱歉让你进退两难。我写iOS项目,刚刚开始学习PHP。这是我的问题。我开发了一个Xcode项目,将一张照片上传到一个web文件夹,该文件夹调用来自在线php脚本的响应。但是响应返回NSLog(@“未给出响应”)。我修改了php脚本,该脚本将照片从我的应用程序上载到主文件夹,创建一个随机文件名,然后将其复制到子文件夹中。这一切都很完美。但有两个主要问题。一个。上载的图像水平翻转(镜像)。还有两个。我试图在我的Xcode项目中获得响应,以返回到主图像上传位置的路径。这是我的密码 XCODE(上传非
AFHTTPRequestOperationManager*manager[AFHTTPRequestOperationManager];
AFHTTPRequestSerializer*serializer=[AFHTTPRequestSerializer];
NSMutableURLRequest*request=[serializer multipartFormRequestWithMethod:
@“POST”URLString:UPLOAD\u url参数:nil
构造体WithBlock:^(id formData){
[formData appendPartWithFileData:UIImageJPEG表示(capturedImage、QUALITY\u PHOTO\u用于上传)
姓名:@“照片”
文件名:@“测试”
mimeType:@“image/jpeg”];
}];
AFHTTPRequestOperation*操作=
[manager HTTPRequestOperationWithRequest:请求
成功:^(AFHTTPRequestOperation*操作,id响应对象){
NSLog(@“我的图像上载路径:%@”,responseObject);
UIAlertView*alertView=[[UIAlertView alloc]initWithTitle:@“报告”
消息:@“您的文件已上载。”代表:无取消按钮:@“确定”其他按钮:无];
[警报视图显示];
失败:^(AFHTTPRequestOperation*操作,NSError*错误){
NSLog(@“未给出响应”);
}];
[operation setUploadProgressBlock:^(nsInteger uu未使用的字节写入,
long long TotalBytesWrite,long long totalBytesExpectedToWrite){
}];
[操作启动];
PHP代码(上传、创建随机文件名、将照片复制到thumbs文件夹都很好,但上传时照片会被翻转,我的日志中会出现一些错误,我需要一个响应,在Xcode响应中显示图像的路径)
最后是我日志中的错误
[09-Mar-2017 21:29:54 UTC]PHP警告:非法字符串偏移量“IFD0”
在里面
/home/imagine/public_html/galleries/main/galleries/test/upload.php
第35行[09-Mar-2017 21:29:54 UTC]PHP警告:非法字符串
中的偏移“方向”
/home/imagine/public_html/galleries/main/galleries/test/upload.php
第35行[09-Mar-2017 21:29:54 UTC]PHP警告:
文件获取内容(6DBAA365321640D706C1C5BD281EED5.jpg):未能
open stream:中没有此类文件或目录
/home/imagine/public_html/galleries/main/galleries/test/upload.php
在线37
如果使用节
IFD0
调用exif\u read\u data
,则应将$exif['IFD0']['Orientation']
替换为$exif['Orientation']
,因为返回的数组仅包含IFD0
值
此外,您提供的代码中有一个输入错误:O
在IFDO
中应该是0
,如下所示:
$exif = exif_read_data($upload_image, 'IFDO', true);
最后,在使用EXIF数据之前,检查是否在EXIF数据中定义了方向:
if (isset($exif['Orientation']))
在两个return语句之前添加error_log(),查看正在执行的代码路径
$exif = exif_read_data($upload_image, 'IFDO', true);
if (isset($exif['Orientation']))