【问题标题】:How can I save a dynamically generated image to my database?如何将动态生成的图像保存到我的数据库中?
【发布时间】:2012-12-06 20:02:02
【问题描述】:

我有一个将用户签名捕获为 SVG 的 HTML 页面。我在页面上将其转换为 .png 并将其放入图像容器中。

如何利用它进入数据库?我知道如何使用:<input type="file" />,但我不知道如何将 <img /> 元素传递给 PHP。

这会将我的 SVG 更改为 PNG

       $("#save").click(function(){
          var datapair = sigdiv.jSignature("getData", "svg");
          var i = new Image();
          i.src = "data:" + datapair[0] + "," + datapair[1];
          $(i).appendTo($("#outputSvg"));

          var canvas = document.getElementById("canvas");

          canvg(canvas, datapair[1]);

          var img = canvas.toDataURL("image/png");
          $("#outputRaster").append("<img src='"+img+"'/>");
        });

如何获取我在&lt;div id='outputRaster'&gt; 中生成的&lt;img /&gt; 标记并将其传递给我的PHP?我知道如何将它放入数据库,它实际上只是将图像从我的视图层获取到我的 PHP 页面,该页面仅用于数据访问。

任何帮助或建议将不胜感激!

【问题讨论】:

标签: php javascript html


【解决方案1】:

将图像保存为文件。 将文件路径存储在数据库中。

莱昂

【讨论】:

    【解决方案2】:

    如果您谈论的是图像本身,请查找 BLOB(它们代表二进制大对象)。它们是在数据库中存储大型二进制数据的方式。

    如果你在谈论标签,你会像存储任何其他文本一样存储它们。

    【讨论】:

    • 我知道如何将图像本身放入数据库。通常我会在我的表单中添加一个&lt;input type="file" /&gt; 并让用户上传他们自己的。然而,这是我正在生成的图像。
    • 啊啊啊啊,动态生成的图片,没有对应的文件啊?
    • 是的,先生!我在原始帖子中发布了我的代码,以便您了解。
    • 你试过使用getImageData吗?这是一个链接:w3schools.com/tags/canvas_getimagedata.asp
    【解决方案3】:

    假设您只需要保存图片的路径(您的图片存储在服务器中,或者您从互联网上使用它。)

       $("#save").click(function(){
          var datapair = sigdiv.jSignature("getData", "svg");
          var i = new Image();
          i.src = "data:" + datapair[0] + "," + datapair[1];
          $(i).appendTo($("#outputSvg"));
    
          var canvas = document.getElementById("canvas");
    
          canvg(canvas, datapair[1]);
    
          var img = canvas.toDataURL("image/png");
          $("#outputRaster").append("<img src='"+img+"'/>");
          imageTag = "<img src='"+img+"'/>";
          //$.ajax( {url : yourUrl , data: imageTag} );
        });
    

    如果您需要使用 jQuery 上传图片,请阅读这篇文章:link

    【讨论】:

      猜你喜欢
      • 2016-09-15
      • 1970-01-01
      • 1970-01-01
      • 2023-04-10
      • 2021-04-14
      • 1970-01-01
      • 2017-04-13
      • 2014-03-01
      • 2015-12-17
      相关资源
      最近更新 更多