2015-06-06 23 views
1

我想發送我的表單數據到PHP使用ajax這是成功發生,form1包含表我的問題是當我通過ajax序列化到PHP後發送表單數據,當我其打印在得到D當我打印陣列結束

PHP方面,它給了我字符 'd'

我不KNW爲什麼發生這種情況

jQuery('.finialize').click(function(){ 
       var dte={}; 
       var $form = $("#form1"); 
       dte = getFormData($form); 
       dte['info']='disrepency'; 
       console.log(dte); 
       senddata(dte,"../controller/register.php"); 

}); 



     function getFormData($form){ 
      var unindexed_array = $form.serializeArray(); 
      var indexed_array = {}; 

      $.map(unindexed_array, function(n, i){ 
       indexed_array[n['name']] = n['value']; 
      }); 

      return indexed_array; 
     } 


     function senddata(data,url){ 
      jQuery.ajax({ 
        type: "POST", 
        url: url, 
        data: {'data':data}, 
        dataType: "json", 
      }) 
      .done(function(result){ 
       if(result['errCode'].hasOwnProperty('-1')){ 
        alert(result['errMsg']); 
       } 
       else{ 
        alert(result['errMsg']); 
       } 
       console.log(result); 
      }) 
      .fail(function(jqXHR, textStatus) { 
        console.log("failed due:"+ textStatus); 
      }) 
     } 

PH P一側

foreach($dt as $key=>$val){ 
      echo $val['InvoiceNo'].":"; 
      echo $val['ContractID']."\n"; 
     } 

我得到的輸出

148523:1/14S/0 
1485231:1/14S/0 
1485232:1/14S/0 
1485233:1/14S/0 
d:d 

爲什麼我會得到d:d

什麼,我從阿賈克斯得到這我的PHP端數據

Array 
(
    [input_[1] => Array 
     (
      [InvoiceNo] => 148523 
      [ContractID] => 1/14S/0 
      [Amount] => 
      [SetOFF] => 
      [Comment] => 
      [childInvoice_1] => Array 
       (
        [1] => Array 
         (
          [InvoiceNo] => 148523 

          [ContractID] => 1/14S/0 
          [Amount] => 
          [SetOFF] => 
          [Comment] => 
          [Line_item] => 144 
         ) 

        [2] => Array 
         (
          [InvoiceNo] => 148523 

          [ContractID] => 1/14S/0 
          [Amount] => 
          [SetOFF] => 
          [Comment] => 
          [Line_item] => 149 
         ) 

       ) 

     ) 

    [input_[2] => Array 
     (
      [InvoiceNo] => 1485231 

      [ContractID] => 1/14S/0 
      [Amount] => 
      [SetOFF] => 
      [Comment] => 
     ) 

    [input_[3] => Array 
     (
      [InvoiceNo] => 1485232 

      [ContractID] => 1/14S/0 
      [Amount] => 
      [SetOFF] => 
      [Comment] => 
      [childInvoice_3] => Array 
       (
        [1] => Array 
         (
          [InvoiceNo] => 1485232 

          [ContractID] => 1/14S/0 
          [Amount] => 
          [SetOFF] => 
          [Comment] => 
          [Line_item] => 146 
         ) 

       ) 

     ) 

    [info] => disrepency 
) 

回答

1

請將ch安格您的foreach像下面,並測試once.:-

foreach($dt as $key=>$val){ 
      if($key != 'info'){ 
       echo $val['InvoiceNo'].":"; 
       echo $val['ContractID']."\n"; 
      } 
     } 
+0

感謝的是D:d不見了 – MayuriS

+0

@MayuriS請記住這作爲一個答案。謝謝:) :) –

+0

哎呀對不起,我真的忘了謝謝你的幫助 – MayuriS