【问题标题】:convert base64 data to image and save in codeIgniter folder将base64数据转换为图像并保存在codeIgniter文件夹中
【发布时间】:2016-02-03 06:17:07
【问题描述】:

我想将数据 url 转换为图像并将其保存在 codeigniter 文件夹中

 private function _convertToImg($data){ //$data is the data url
        $encodedData = str_replace(' ','+',$data);

        $decodedData = base64_decode($encodedData);
   file_put_contents('/../../uploads/newImage.JPG',$decoded);
}

但它导致了错误

消息:file_put_contents(/../../uploads/newImage.JPG):打开流失败:没有这样的文件或目录

我不知道为什么会这样,我对php和codeigniter不太熟悉

提前谢谢你!

【问题讨论】:

  • 问题是您的目标文件夹路径。
  • 您的上传文件夹在哪里?在应用程序内部?
  • 我“猜”file_put_contents('../../uploads/newImage.JPG',$decoded); 是你想要做的。
  • myProject/uplods,上传文件夹包含在应用程序文件夹的同一目录中

标签: php codeigniter


【解决方案1】:

如果应用程序和上传文件夹在同一个目录,那么,

你应该在下面写成:-

// APPPATH will give you application folder path
file_put_contents(APPPATH . '../uploads/newImage.JPG',$decoded);

也可以设置上传路径,

$this->upload_config['upload_path'] = APPPATH . '../uploads/';

获取完整信息写在下面的行

 $data = $this->upload->data();
 // $data will contain full inforation
 echo "Full path is:". $data['full_path'];

这个link会对你有用。

希望对你有帮助:)

【讨论】:

  • 但现在似乎是一个错误,消息:file_put_contents(/var/www/html/portfolioApis/application/../uploads/newImage.JPG): failed to open stream: Permission denied
  • 授予您上传文件夹的权限。
猜你喜欢
  • 1970-01-01
  • 2013-12-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-20
  • 1970-01-01
  • 2011-01-20
相关资源
最近更新 更多