Android应用程序,我将aphoto发布到awebserver。在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。怎么了?

最佳答案

有几件事可能会出错,你的描述不够详细。
图片是怎么贴出来的?
您确定它是作为post变量而不是作为$u文件中的上载文件发送的吗?
您确定$_post['image']包含可识别图像格式(jpeg、png、gif、wbmp和gd2)的内容,而不是原始数据吗?
您确信RPyPytoPyCelle与DriMyMalm相同吗?/数据/照片?
imagecreatefromstring($image)的结果是什么?
如果您直接调用脚本,您是让它执行还是出现500个错误?

关于php - 即使在0777目录内,也不会使用imagepng创建PNG图片,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30596826/

10-13 05:09