He visto algunos ejemplos pero creo que mi problema puede estar en PHP. Estoy tratando de cargar una imagen a un servidor desde el iphone usando AFNetworking. Aquí está mi código obj-c:AFNetworking Uploading Image
-(IBAction)uploadButtonClicked:(id)sender
{
NSData *imageToUpload = UIImageJPEGRepresentation(mainImageView.image, 90);
AFHTTPClient *client= [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:@"http://www.THESERVER.com"]];
NSMutableURLRequest *request = [client multipartFormRequestWithMethod:@"POST" path:@"/PROJECT/upload.php" parameters:nil constructingBodyWithBlock: ^(id <AFMultipartFormData>formData) {
[formData appendPartWithFileData: imageToUpload name:@"file" fileName:@"temp.jpeg" mimeType:@"image/jpeg"];
}];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
NSString *response = [operation responseString];
NSLog(@"response: [%@]",response);
[MBProgressHUD hideHUDForView:self.view animated:YES];
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
[MBProgressHUD hideHUDForView:self.view animated:YES];
if([operation.response statusCode] == 403){
NSLog(@"Upload Failed");
return;
}
NSLog(@"error: %@", [operation error]);
}];
[operation start];
}
Ésta es mi upload.php:
function upload(){
$uploaddir = '/uploads/';
$file = basename($_FILES['file']['name']);
$uploadfile = $uploaddir . $file;
if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) {
sendResponse(200, 'Upload Successful');
return true;
}
sendResponse(403, 'Upload Failed');
return false;
}
Cuando intento cargar falla en
if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) {
y devuelve el 403/falso código de estado que establecí
más probable es un problema de permisos. Habilite 'error_reporting (E_ALL)' –
ya que estoy haciendo esto a través del dispositivo iOS ¿cómo puedo devolver los mensajes de error? Tengo una función sendResponse ('400', "$ errors") que puedo usar, pero ¿a qué le pongo $ errors? – mkral
@mkral: sé que esto es un poco viejo, pero traté de implementar una versión modificada de la parte de carga del código de ur y no funcionó para mí ¿funcionó para ti al final? ps Estoy tratando de aprender ios/objetivo C –