在Windows上的php Web服务中保存图像时权限被拒绝

时间:2014-10-09 03:44:16

标签: php android mysql web-services codeigniter

首先,这是我第一次编写Web服务和android(通常只是android)的代码,所以请耐心等待。

我尝试通过基于Codeigniter的webservice将图像上传到mysql(phpmyadmin)。 mysql(phpmyadmin)中的image列是BLOB。

$data['image'] = str_replace('data:image/jpg;base64,', '', $data['image']);
$data['image'] = str_replace(' ', '+', $data['image']);
$decoded= base64_decode($data['image']);

然后保存已解码的文件(这是拒绝权限的地方):

file_put_contents('C:\xampp\htdocs\project\images', $decoded);

图像文件应保存在“temp”文件夹中,该文件夹与php文件(控制器文件夹)位于同一文件夹中。但是,永远不会存储该文件(但其他数据,如名称,电子邮件存储在mysql中)。

我得到的错误:

<p>Message:  file_put_contents(C:\xampp\htdocs\project\images): failed to open stream: Permission denied</p>

我现在有点卡住了。请帮助我。

感谢您的帮助

1 个答案:

答案 0 :(得分:3)

根据错误,我认为images目录必须具有读写权限,以便将图像存储到其中。

您可以为images文件夹授予777权限。如果要提供,请在终端中键入以下代码

sudo chmod -R 777 path

请注意您只允许图像文件夹,而不是其他文件夹