0

我有一个将用户签名捕获为 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+"'/>");
        });

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

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

4

3 回答 3

3

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

莱昂

于 2012-12-06T20:04:35.043 回答
0

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

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

于 2012-12-06T20:04:29.933 回答
0

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

   $("#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 上传图片,请阅读本文:链接

于 2012-12-06T20:22:30.607 回答