PHP没有将图像插入目录

时间:2014-04-26 16:17:35

标签: php postgresql amazon-web-services amazon-ec2

我有一个PHP脚本,可以从用户那里接收数据。该脚本托管在运行Apache,PHP和PostGreSQL的AWS EC2实例上。

这是脚本:

$chars = 'abcdefghijklmnopqrstuvwxyz0123456789';
$length = 5;
$fileName = '';
for($i = 0; $i < $length; $i++) {
  $fileName .= $chars[mt_rand(0, 36)];
}

$filePath = "uploads/$fileName.jpg";

$encoded_photo = $_POST['snap'];
echo $encoded_photo;
$photo = base64_decode($encoded_photo);
$file = fopen($filePath, 'wb');
fwrite($file, $photo);
fclose($file);

因此,为照片生成随机文件名,然后将$filePath变量插入到PostGreSQL中。

然而,当我检查uploads/目录时,它是空的。没有找到JPEG。我相信我的代码是正确的,也许目录的权限不正确?可以提供任何指导吗?

请注意我的host=localhost port=5432 dbname=*** user=**** password=****方法中有pg_connect()

1 个答案:

答案 0 :(得分:-3)

Apache需要能够写入uploads /目录。一种方法是在上传时将Apache用户放入组中,并确保该组对目录具有写权限。

https://stackoverflow.com/questions/7283068/how-to-add-an-existing-user-into-a-group-in-linux

这将赋予组写权限:chmod g + w uploads /