php – 从iOS应用程序将图像存储到MYSQL数据库中

我正在使用MYSQL数据库从我的iOS应用程序中存储图像.我使用base64encoding和解码技术来存储图像.
问题:
它将名称存储在数据库中作为字符串即可.但它不是将图像存储在htdocs文件夹中.我的问题在哪里以及如何解决?

php代码:

<?PHP
    $host='localhost';
    $name='root';
    $pwd='';
    $db='i';
    $conn=mysql_connect($host,$name,$pwd);
    mysql_select_db($db,$conn);
    if($conn)
    {  $image=$_POST['image_string'];
        if($image!='')
        {
            $img = @imagecreatefromstring(base64_decode($image));
            if($img != false)

            {
                imagejpeg($img, "htdocs/".$image."");}
        }
        $qur=mysql_query("INSERT INTO `j` (`id`, `name`) VALUES (NULL, '$image')");
        if($qur)
        {
       echo "inserted";
        }
        else
        {
            echo mysql_error();
        }
       }

?>

客户端代码:

NSData *imageData=UIImagePNGRepresentation(_imageView.image);
NSString *string;
if([imageData respondsToSelector:@selector(base64EncodedStringWithOptions:)])
{
    NSLog(@"iOS 7+");
    string=[imageData base64EncodedStringWithOptions:kNilOptions];
}
else
{
    string=[imageData base64Encoding];
}

NSString *post=[[NSString alloc]initWithFormat:@"image_string=%@",string];
post = [post stringByReplacingOccurrencesOfString:@"+" withString:@"%2B"];
NSURL *url=[[NSURL alloc]initWithString:@"http://localhost/lastImage.php"];
NSData *postDAta=[post dataUsingEncoding:NSUTF8StringEncoding];
NSString *postlength=[NSString stringWithFormat:@"%lu",(unsigned long)[postDAta length]];
NSMutableURLRequest *request=[[NSMutableURLRequest alloc]init];
[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:postlength forHTTPHeaderField:@"Content-length"];
[request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postDAta];
NSError *error = [[NSError alloc] init];
NSHTTPURLResponse *response = nil;
NSData *urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];

解决方法:

首先检查要保存的目录是否具有写入权限.

然后尝试:
imagejpeg($img,$_SERVER [‘DOCUMENT_ROOT’].“/ image_name.jpg”);

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...