2016-07-13 19 views
0

私はインラインのデータ変換可能な編集を持っています。私はそれを画像アップロードで動作させることはできません。私はajax経由でPHPに画像を渡す方法を知らない。私は別の方法を試してみましたが、私はそのファイルをPHPに渡す方法がわからない、または分からないようです。ここに私のajaxコードがあります。 jqInputs [2]ファイル入力です。ファイルをアップロードしたデータセットのインライン編集

function addRow(oTable, nRow) { 
      var jqInputs = $('input', nRow); 
      var jqInputss = $(':selected', nRow); 

      var path=jqInputs[2].value; 
      var file = path.match(/\\([^\\]+)$/)[1]; 

      oTable.fnUpdate(jqInputs[0].value, nRow, 0, false); 
      oTable.fnUpdate(jqInputs[1].value, nRow, 1, false); 
      oTable.fnUpdate(file, nRow, 2, false); 
      oTable.fnUpdate(jqInputs[3].value, nRow, 3, false); 
      oTable.fnUpdate('<a class="edit" href="">Edit</a> <a class="delete" href="">Delete</a>', nRow, 4, false); 
      var id = getUrlParameter('id'); 
      $.ajax({ 
       type: 'POST', 
       url: 'app/producatori_add.php?id=' + id, 
       data: { 
        id: jqInputs[0].value, 
        nume: jqInputs[1].value, 
        logo: file, 

       }, 
       mimeType: "multipart/form-data", 
       contentType: false, 
       cache: false, 
       processData: false, 
       success: function(data) 
       { 

        $("#content").html(data); 

       } 
      }); 
      oTable.fnDraw(); 
     } 
+1

この方法でファイルアップロードを行うことはできません。確かにパラメータではありません。あなたはこれを別々に行う必要があります。ネット上の多くのチュートリアル、Googleの「ajax upload iframe」または「ajax upload filereader」などを試してください。 – davidkonrad

答えて

0

他の誰かがインラインデータテーブルアップロードでこの問題を抱えている場合は、問題なく動作します。私はFormData()を使用して、私はPHPにimgを送った

function addRow(oTable, nRow) { 

      var jqInputs = $('input', nRow); 
      var jqInputss = $(':selected', nRow); 


      var formData = new FormData(); 

      formData.append('name', jqInputs[1].value); 
      formData.append('file', $('input[type=file]')[0].files[0]); 


      oTable.fnUpdate(jqInputs[0].value, nRow, 0, false); 
      oTable.fnUpdate(jqInputs[1].value, nRow, 1, false); 

      oTable.fnUpdate(jqInputs[3].value, nRow, 3, false); 
      oTable.fnUpdate('<a class="edit" href="">Edit</a> <a class="delete" href="">Delete</a>', nRow, 4, false); 

      $.ajax({ 
       type: 'POST', 
       url: 'app/producatori_add.php', 
       data: formData, 
       contentType: false, 
       processData: false,    

       success: function(data) 
       { 

        $("#content").html(data); 

       } 
      }); 
      oTable.fnDraw(); 
     } 
関連する問題