【问题标题】:how to save picture using php?如何使用php保存图片?
【发布时间】:2016-03-03 05:38:34
【问题描述】:
<?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 save field中的图片是:medium blob。

我该如何解决这个问题?

【问题讨论】:

  • 使用 file_get_contents('tourpic.jpg') 来检索图像,如果需要像你想要做 base64 编码并保存到你的 mysql 字段。但更好的做法通常是将参考保存在数据库中,并将文件保存在文件系统中,这将减少您的数据库导出大小和数据库负载

标签: php mysql file save


【解决方案1】:

您的插入查询错误。您没有指定它将被保存的表的哪个字段。 应该是.. INSERT INTO tb_pic(field1,field2) VALUES('',$binary_pic)

我的建议是,这不是将图片保存在数据库中的好方法。它很重。最好将其保存在您的服务器/目录中。 试试看http://php.net/manual/en/function.move-uploaded-file.php

【讨论】:

    【解决方案2】:

    你必须引用图像字符串:

    values('','$binary_pic') 
    

    此外,请确保图像足够小以适合中等大小的斑点。否则,它将被修剪,您将无法正确提取它

    注意:如果表格多于两列,则需要指定插入数据的列。

    【讨论】:

      猜你喜欢
      • 2012-02-21
      • 1970-01-01
      • 1970-01-01
      • 2021-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-06
      • 1970-01-01
      相关资源
      最近更新 更多