无法存储输入类型=隐藏的图像

时间:2019-06-21 10:40:21

标签: php

我正在使用图片裁剪jquery插件https://www.jqueryscript.net/other/Simple-jQuery-Client-Side-Image-Cropping-Plugin-Awesome-Cropper.html

要使用此插件,我必须使用<input id="someId" class="crop-img" type="hidden"> ( type="hidden" instead of type="file")

还有要实例化的脚本,

$(document).ready(function(){
   $('.crop-img').awesomeCropper(
      { width:1020, height:434 , debug: true }
    );
})

但是问题是,由于type="hidden",我无法在php laravel框架中获得价值,如果我将其更改为type="file",我正在获得价值,但种植插件无法正常工作。 。 请帮助。

1 个答案:

答案 0 :(得分:0)

问题是此插件以base64编码的形式将裁剪后的图像保存到该隐藏的输入字段中。因此,您不会获得可通过表单提交发送的文件类型。 您可以做的是获取该数据并将其发送到服务器,然后将base64转换为映像。您可以使用JQuery这样获取数据,

let base64EncodedImage = $('#someId').val();

它将返回如下所示的输出,

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAACWCAYAAAA8AXHiAAAgAElEQVR4Xuydd3xcxbm/n+19V2V3teq9S5ZcZMu9YAO2AWODaQkQQgIhvSc3uUlukpvkpocL6Z2E3sHGGPdeZMuWrN7r7mqlXWl73/19JAjcJPyuCeDEutr5S/aZec8733l2Zs6cOe8I4vF4nHeQpotHYzGCoTDRaPQdWEoU/b+kgOCdgPUXqALBELFY7P+SLom6vEMF/gosv9+PdcyG0+lEIpFgMqURDkcwpRnf9DbTMAVCISKRv+6ppoHz+XxEolHUKhUikegdupkoPtsUeB2saagazjZiNluRyaQzw9r4hB2RUMg9H7jr7+o1Dc80OP5A8O+uBYNBWlrbkEll6A2pmNLS/ipPLOTDMelGqEwibO8nqMoix6Cmv7cXfaoOs2UCBAI0yUZMRhVtDc1IkpJQKNQo5CKkEhEeuwOZPosUtQTzUC9STQZGbZyOf