微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Xcode 6和PHP文件将图像上传到服务器

我试图根据用户的选择将图像发送到我的网站,每次应用程序都应该给出用户选择的图像名称.

我正在使用Xcode 6和以下代码

 Nsstring *urlString = @"http://MyWebSite.com/sendImages.PHP";
    NSMutableuRLRequest *request = [[NSMutableuRLRequest alloc] init];
    [request setURL:[NSURL URLWithString:urlString]];
    [request setHTTPMethod:@"POST"];
    NSMutableData *body = [NSMutableData data];
    Nsstring *boundary = @"---------------------------14737809831466499882746641449";
    Nsstring *contentType = [Nsstring stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
    [request addValue:contentType forHTTPHeaderField:@"Content-Type"];
    // file
    NSData *imageData = UIImageJPEGRepresentation(self.imageView.image,90);
    [body appendData:[[Nsstring stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:[@"Content-disposition: attachment; name=\"userfile\"; filename=\"myImage.jpg\"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:[@"Content-Type: application/octet-stream\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:[NSData dataWithData:imageData]];
    [body appendData:[@"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
    // close form
    [body appendData:[[Nsstring stringWithFormat:@"--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
    // set request body
    [request setHTTPBody:body];
    //return and test
    NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
    Nsstring *returnString = [[Nsstring alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Success" message:returnString delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil];
    [alert show];

她是我的PHP文件

<? 
    $myparam = $_FILES['userfile']; //getting image Here //getting textLabe Here 
    $target_path = "khadamati/";
    if(move_uploaded_file($myparam['tmp_name'], $target_path . basename( $myparam['name'])))

    { echo "The file ". basename( $myparam['name']). " has been uploaded"; } 

    else 

    { echo "There was an error uploading the file, please try again!"; } 

    ?>

如何在此行中更改myImage名称

[body appendData:[@"Content-disposition: attachment; name=\"userfile\"; filename=\"myImage.jpg\"\r\n" dataUsingEncoding:NSUTF8StringEncoding]];

我试图找到任何可以帮助我的薄,但我不能,所以请在我的展位代码中找到错误.

解决方法:

你应该试试这个,

uname,datestring(我在这里用来定义上传用户和他上传的时间).

[body appendData:[[Nsstring stringWithString:[Nsstring stringWithFormat:@"Content-disposition: form-data; name=\"userfile\"; filename=\"%@receipt%@.jpg\"\r\n", uname,datestring]] dataUsingEncoding:NSUTF8StringEncoding]];

我希望它对你有所帮助,
uname和datestring都是字符串!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐