0

我的问题是:

Iphone开发人员向我发送图像或.doc.pdf或等...文件给我以使用服务存储在数据库中

所以我直接尝试将它们存储在数据库中,但问题是如果他们向我发送一个 1MB 的文件,然后由于其大小而无法将其存储在数据库中,所以我正在考虑将上传的文件iphone保存到一个文件夹中并将该路径保存在数据库...

我知道如何将图像存储在来自发布功能的文件夹中,但对这个功能很陌生,所以你能帮我解决这个问题......

4

3 回答 3

0

$_GET使用或$_POST变量检索正常数据。$_FILES使用变量访问上传的文件。其中$_FILES是您可以检索以存储在数据库中的名称。

于 2013-09-06T05:08:04.303 回答
0

要在指定文件夹中上传图像,请使用:

if($_FILES["file"]["name"]!="")
{
    move_uploaded_file($_FILES["file"]["tmp_name"], "images/portfolio/presentation/".$_FILES["file"]["name"]);  
}

然后是 mysql 查询。如果你想检查文件,那么你可以使用这个:

function chk_image($imgname,$imgtype,$imgerr)
{
$allowedExts = array("jpg", "jpeg", "gif", "png");
$extension = end(explode(".", $imgname));
$err = '';

if ((($imgtype == "image/gif") || ($imgtype == "image/jpeg") || ($imgtype == "image/png")|| ($imgtype == "image/pjpeg")) && in_array($extension, $allowedExts))
{
    if ($imgerr > 0)
    {
        $err = "Invalid file";
    }
}
else
{
    $err = "Invalid file (Please attach only image file).";
}

return $err;
}
于 2013-09-06T05:20:02.343 回答
0

这是解码来自 iPhone 的图像....

 $imgdata = base64_decode($child);

 $f = finfo_open();

这里我知道来自 iPhone 的文件类型

 $mime_type = finfo_buffer($f,$imgdata, FILEINFO_MIME_TYPE);

 $i = strpos($mime_type,'/');
 $type = substr($mime_type,$i+1);

这里将文件名保存为 time() 值....

 $Image1=time().'.'.$type;

这里将该文件保存在名为 files 的文件夹中......

 file_put_contents('files/'.$Image1,$imgdata);

 $Image='files/'.time().'.'.$type;
于 2013-09-17T04:26:28.490 回答