【发布时间】:2012-10-20 10:14:21
【问题描述】:
我正在尝试将图片从移动设备上传到服务器。我们正在使用 PhoneGap (Javascript) 构建,因此我们将其转换为字符串以便将其发送到服务器。我收到后遇到问题,将其转回可读的图像文件。 简单来说,我需要取一个字符串和一个发给我的文件名,解码,转换成.png,然后裁剪成圆形图片。
这就是我目前正在做的事情
if (isset($_POST['file']))
{
//Result variable
$result = false;
$pic = base64_decode($_POST['file']);
$filename = $_POST['filename'];
if (strlen($pic) > 9 )
{
$fh = fopen("/var/www/pics/events/".$filename, 'w') or die("can't open file");
fwrite($fh, $pic);
fclose($fh);
}
}
如果我能找出我在这里做错了什么导致它不能正确保存为图像文件,我想我可以让其余的代码工作?该文件正确上传,但它没有扩展名,当我在浏览器中指向它时,它看起来应该是一个图像文件,但从不显示图像。当我直接到它的位置时,我会看到那个带有彩色形状的破碎的小图片图标。
我是否需要了解在此过程中发送的图像类型?如何知道它是 .gif、.jpg/jpeg、.png 等...?
提前感谢您的帮助!
内森
【问题讨论】:
标签: php javascript base64