2013-04-18 71 views
0

我有一個ajax調用,將數據傳遞給另一個php文件createTest2.php,如下所示。AJAX調用成功但拋出未定義的索引錯誤

但createTest2.php文件會拋出錯誤

「通知:未定義指數:AAA在C:\ XAMPP \ htdocs中\ TestProj \測試\ createTest2.php第2行

caller.php

在引號
$(document).ready(function(){ 
    $("#button_submit").click(function() 
    { 

    $.ajax({ 
     type:"POST", 
     url:"createTest2.php", 
     data:{aaa : "UNIT_TEST"}, 
     success:function() 
     { 
     alert("success"); 
     } 
    }); 
}); 
}); 

createTest2.php

$test_name = $_POST['aaa']; 
+0

上similiar問題,對於同樣的問題,每個人都使用'aaa'爲參數....大聲笑。 – itachi

回答

1

給數據屬性,

變化

data:{aaa : "UNIT_TEST"}, 

data:{"aaa" : "UNIT_TEST"}, 
+0

考慮到它是一個對象,*真* *應該無關緊要,並且對象鍵不必用引號包裹,除非它們包含空格或運算符。 –

+0

更改了它。仍是同樣的問題。 – Jithu

0

嘗試作爲一個數據查詢(使用參數去對象轉換爲數據查詢)

$(document).ready(function(){ 
    $("#button_submit").click(function() 
    { 
    var params = $.param({aaa : "UNIT_TEST"}); 

    $.ajax({ 
     type:"POST", 
     url:"createTest2.php", 
     data: params, 
     success:function() 
     { 
     alert("success"); 
     } 
    }); 
}); 
}); 
+0

已更改。仍是同樣的問題。 – Jithu

3

送你的代碼/腳本沒有錯。我在我的本地主機上試過它,它的工作原理。

請確保錯誤報告配置正確,因爲它正在打印通知 ,該通知也將傳遞給您的ajax結果。

刪除它使用這些上的PHP代碼頂部您createTest2.php: (之前你叫什麼,只是第一個PHP開始標籤後)

<?php 
ini_set("DISPLAY_ERRORS",0); 
error_reporting(0); 

注意到,它僅僅是一個NOTICE,而不是一個ERROR如你的問題所示。 希望有所幫助。 ;)

**更新:有人說,建議以固定的通知,而不是僅僅隱藏它們,只是讓你知道..