我试图在使用blob类型的MySQL数据库中保存图片。当我直接从phpMyAdmin上传它时,它工作正常。但在我的PHP代码中,它不起作用。该mysqli_error方法返回插入图像到MySQL数据库
无效的UTF8字符串: '\ x89PNG'
通知:连接到我的数据库后,我使用的代码:
mysqli_set_charset($Inventory_db, 'utf-8');
mysqli_query($Inventory_db,"set names 'utf8'");
当我删除或插入一个jpg图像,它也告诉我一个可怕的错误!
下面是其他错误:
您的SQL语法错误;检查对应于您的MySQL服务器版本的手册,以找到在'???? \ 0JFIF \ 0 ,, \ 0 \ 0 ?? \ 0tExif \ 0 \ 0MM \ 0 * \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0J \ 0 \ 0 \ 0' 在行1
我该怎么办?
张贴您的表格结构与数据类型 – Ravi
请张贴代码检索图像并执行INSERT语句。否则,你可以找到教程https://blogs.oracle.com/oswald/phps-mysqli-extension:-storing-and-retrieving-blobs – fyrye
就我个人而言,我从不在数据库中存储图像:我将它们保存在服务器上某处我在数据库中存储他们的路径。这样,数据库仍然较轻。然后,当我需要使用该映像时,从数据库中检索它的路径变得快速简单。 – Marco