2015-12-02 50 views
1

如何在PHP CodeIgniter表单中提交Canvas内容? 我的表单中的一个输入是用于绘图或摄像头照片的Canvas以HTML格式提交画布数据

我创建了一个标签<input name="picture" type="hidden">并将其值设置为BASE64内容:

myPictureInput.value = canvas.toDataURL(); 

然而,当用户提交表单,从<input>阅读后的值被截断为64KB。

是否有最佳的方式发布或提交图像与表单数据?

回答

2

this answer中所述,您应该将画布分别发送到服务器,然后将表单提交函数放入完成的回调函数中。

var dataURL = canvas.toDataURL(); 
$(function() { 
    $(form).submit(function(e) { 
      e.preventDefault(); 
      $.ajax({ 
       type: "POST", 
       url: "script.php", 
       data: { 
       imgBase64: dataURL 
       } 
     }).done(function(o) { 
       console.log('saved image'); 
       $.post(url, form.serialize(), function(data) { 
        console.log('saved form') 
       }; 
    });