图片存储 - php mysql 储存base64的图片
问题描述
在html5 的canvas 中我使用了一个表情包制作的第三方控件,现在想要把制作完成的表情包上传到mysql的数据库里。无论是上传到本地服务器然后再数据库里存储文件地址,或者是用blob形式,都可以。请各位大牛告诉我怎么做。我用canvas.todataurl 把图片变成base64的编码,然后用ajax 把编码发到储存的页面,用 $_POST['image']获得base64的编码。我不想直接把base64的编码输入到数据库里因为太大了,但是我不知道怎么样用php 把图片的BASE64编码变成BLOB.能不能把编码变成图片然后直接上传图片到数据库? 但是我记得file_get_content好像只能在本地用不能在服务器上用。以下是我目前获得图片的base64编码代码
$data = $_POST['image'];$data = str_replace(’data:image/png;base64,’, ’’, $data);$data = str_replace(’ ’,’+’,$data);
$data = base64_decode($data);
无论用什么方法只要能把base64编码的图片输入数据库就可以了
问题解答
回答1:文件一般都是存地址的吧,解码保存为文件,数据库存文件路径不行吗
回答2:一般都是先本地生成,直接存地址。
回答3:file_get_contents()可以用吧,我都是用这个的
回答4:一般来说会把文件上传到七牛,拿到一个网络路径,保存该路径到数据库就好了
相关文章:
1. APP上传到电脑服务器,出现数据上传不完整的问题2. javascript - iframe 为什么加载网页的时候滚动条这样显示?3. javascript - 写移动端的页面的时候,有不一快空白,是怎么回事?4. javascript - html这种样式怎么做出来?5. html5 - <!doctype html public "storage"> 是什么意思6. 七牛云存储 - 七牛上传文件后获取访问链接java7. javascript - nodejs 如何同步执行某些模块函数?8. php mail无法发送邮件9. tp 6.0 数据查询,求教!10. git - 使用淘宝npm安装hexo出现问题?
