2015-12-02 81 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') 
       }; 
    });