2012-05-20 119 views
3

最近,我一直在努力與jquery和Ajax努力嘗試提交與他們的形式。我有一個非常簡單的形式,用戶名字段和密碼字段以及提交按鈕。表單應該做的是,一旦表單被提交,信息將由Ajax發送到一個php文件,然後將所述表單值添加到數據庫中。我正在努力的是如何從Ajax獲取值到php。這裏是我的代碼:處理jQuery的Ajax表單提交php

$('#form').submit(function(){ 

var username = $('#username').val(); 
var password = $('#password').val(); 

var dataString = 'uname=' + username + '&passw=' + password; 


$.ajax({ 

    type: "POST", 
    url:'check.php', 
    data: dataString, 

    success: function(data){ 
     alert(data);//only for testing purposes 
    } 
}); 

什麼躲開我的我怎麼能得到dataString從這個用PHP?

+0

'check_php'中的$ _POST ['uname']'不起作用? –

+0

@AndriusNaruševičius我通過將.submit更改爲.blur來測試它,以便實時監控它,並且當我嘗試$ _POST ['uname]時,它會給我「未定義索引」錯誤。 – Tomkarho

+0

$ _POST ['uname] - 你不是想念一個'''?你確定你的用戶名變量也被接收嗎? –

回答

1

PHP文件:

<?php 
    print_r($_POST); 
?> 

jQuery的一部分:

var dataString = 'uname=555'; 
$.ajax({ 
    type: "POST", 
    url:'check.php', 
    data: dataString, 

    success: function(data){ 
     alert(data);//only for testing purposes 
    } 
}); 

帶給我:

enter image description here

所以我只能猜測是,你是無法獲取你的數據在JavaScript中。

還有一個想法。用"GET"替換類型。然後在php文件中寫一行:

echo $_SERVER["REQUEST_URI"]; 

它在警報框中給了你什麼? :)

0

您通過POST發送什麼(無論是阿賈克斯非Ajax)這將在一個PHP全局數組稱爲$_POST

要測試,請將check.php如下:

<?php 
print_r($_POST); 
?> 

這應該反映在你的alert()阿賈克斯變量