2017-03-06 163 views
-2

發送$username PHP與data: new FormData(this),到add.php像data: new FormData(this),$username如何與Ajax代碼做AJAX將數據發送到PHP文件

<script type="text/javascript"> 
    $(document).ready(function (e) { 
     $("#uploadFormuserimg").on('submit',(function(e) { 
      e.preventDefault(); 
      $.ajax({ 
       url: "add.php", 
       type: "POST", 
       data: new FormData(this), 
       contentType: false, 
       cache: false, 
       processData:false, 
       success: function(data) 
       { 
        $("#user_img_a").html(data); 
       }, 
       error: function() 
       { alert("error"); 
       }   
      }); 
     })); 
    }); 
</script> 
+0

[你看過瀏覽器開發工具中的AJAX請求/響應了嗎?你有沒有在項目中包含jQuery庫?是否有任何錯誤報告?你是否在網絡服務器上運行這個服務器?](http://jayblanchard.net/basics_of_jquery_ajax.html) –

+0

顯示的代碼幾乎是你如何創建一個AJAX請求。這個失敗具體如何?當你調試這個時,它究竟發生了什麼錯誤? – David

+0

這部分代碼。我只是想發送更多的數據'data:new FormData(this),'add.php – mody

回答

0
var myData = new FormData(this); 
    myData.append('username','<?php echo $username; ?>'); 

,並獲得 「add.php」 像這樣

$username = $_POST['username']; 

這個工作在我的身邊。

+0

好吧我怎麼得到用戶名在add.php – mody

+0

像其他值的形式 –

+0

它爲我工作謝謝 – mody

0

根據意見的問題,特別是:

我只是想添加一些數據

你只是問如何添加更多的字段到被創建的對象被讀取y在data的值?事情是這樣的:

var myData = new FormData(this); 
myData.append("anotherField", "anotherValue"); 
// etc. 

然後,只需使用該變量爲您AJAX數據:

$.ajax({ 
    url: "add.php", 
    type: "POST", 
    data: myData, 
    contentType: false, 
    cache: false, 
    processData:false, 
    success: function(data) 
    { 
     $("#user_img_a").html(data); 
    }, 
    error: function() 
    { alert("error"); 
    }   
}); 

您可以將您的任何一個變量喜歡和使用該變量在以後的時間。 With a FormData object您通常會使用.append()爲其添加更多鍵/值對。

+0

確定另一個值是php代碼,我可以這樣使用:'myData.anotherField =「<?php echo $ username?>」;'???? – mody

+0

@mody:當然。 PHP並不關心你是否用HTML代碼或JavaScript代碼圍繞「echo」,它只是涉及PHP的全部文本。你試過了嗎? – David

+0

我在side_server(add.php)中顯示錯誤(注意:未定義的變量:用戶名在add.php中)它是從side_server獲取變量'$ username'的方式? – mody