在Android
应用中,我将photo
发布到webserver
。在PHP
脚本中,我想将文件保存在directory
:
$name = "parcelle_" . $photo->lireBienPhotoSeq() . ".png";
if ( ! file_exists (RP_PHOTO_PARCELLE) ) {
mkdir(RP_PHOTO_PARCELLE, 0777, true);
chmod(RP_PHOTO_PARCELLE, 0777);
}
$dest = DIR_MAIN . '/data/photo_parcelle/' . $name;
$image = base64_decode($_POST["image"]);
$img = imagecreatefromstring($image);
if ($img !== false)
imagepng($img, $dest);
$chemin = PHOTO_PARCELLE . $name;
问题是image
未创建,Android
应用程序收到响应代码500(HTTP_INTERNAL_ERROR)!我发了ls -l
来查看directory
的权利,它是0777.那有什么不对?
答案 0 :(得分:0)
在这个问题上可能会出现一些问题,而且您的描述不够详细。
图像是如何发布的?
您确定它是作为POST变量发送的,而不是作为$ _FILES中的上传文件发送的吗?
你确定$ _POST [' image']包含可识别图像格式(JPEG,PNG,GIF,WBMP和GD2)的内容而不是原始数据?
您确定RP_PHOTO_PARCELLE与DIR_MAIN相同吗? ' /数据/ photo_parcelle /' ?
imagecreatefromstring($ image)的结果是什么? ?
如果您直接调用脚本,是执行还是500错误?
答案 1 :(得分:0)
查看日志后,imagecreatefromstring
函数未知,因此安装了gd软件包并且可以正常工作!服务器是新的,而不是我的本地计算机!洛尔