<?php
$size = filesize('H:/blog_banner.jpg');
$fp = fopen('H:/blog_banner.jpg','rb');
$binary_pic = fread($fp,$size);
$link = mysqli_connect('127.0.0.1','root','123456') or die('connect failed!');
$binary_pic = base64_encode($binary_pic);
mysqli_select_db($link, 'rqPro');
mysqli_query($link,"insert into tb_pic values('',$binary_pic)") or die('cant perform pic');
结果是:
无法执行照片。
mysql保存字段中的图片是:medium blob。
我该如何解决这个问题?
答案 0 :(得分:1)
您的插入查询错误。您没有指定要保存的表的哪个字段。
它应该是..插入到tb_pic(field1
,field2
)VALUES('',$ binary_pic)
我的建议是,这不是在数据库中保存图片的好方法。这很重。最好将它保存在服务器/目录中。 试着看http://php.net/manual/en/function.move-uploaded-file.php
答案 1 :(得分:0)
你必须引用图像字符串:
values('','$binary_pic')
此外,请确保图像足够小以适合中等斑点。否则,它将被修剪,你将无法正确提取
注意:如果表有两列以上,则需要指定插入数据所针对的列。