2015-04-23 175 views
1

我正在處理一個簡單的腳本,我只想查看發送到服務器然後通過Ajax接收客戶端的請求和響應。服務器始終返回Status 500。我究竟做錯了什麼? 下面是我的腳本。Ajax返回空白響應

使用Javascript:

<script> 
function loginJs() 
{ 

var xmlhttp; 
if (window.XMLHttpRequest) 
{// code for IE7+, Firefox, Chrome, Opera, Safari 
xmlhttp=new XMLHttpRequest(); 
} 
else 
{// code for IE6, IE5 
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 

xmlhttp.open("GET","http://my-website.com/ajax_exp.php",true); 

xmlhttp.onreadystatechange=function() 
{ 

alert("State "+xmlhttp.readyState+" Status "+xmlhttp.status); 
if (xmlhttp.readyState==4 && xmlhttp.status==200) 
{ 
    alert(xmlhttp.responseText); 
} 
} 
xmlhttp.send(); 
} 
</script> 

ajax_exp.php

<?php 

header('Access-Control-Allow-Origin: http://my-website.com/ajax_exp.php'); 
add_action('wp_ajax_my_action',  'my_action'); 
add_action('wp_ajax_nopriv_my_action', 'my_action'); 

function my_action() 
{ 
$username = 'username'; 
$password = 'password'; 

echo $username; 
die(); 
} 


?> 
+0

'500'手段,錯誤的服務器上。在PHP – Tushar

+0

中檢查AJAX調用的函數看起來問題在於你的add_action()函數。 – syms

回答

1

1)儘量除去

header('Access-Control-Allow-Origin: http://my-website.com/ajax_exp.php'); 
add_action('wp_ajax_my_action',  'my_action'); 
add_action('wp_ajax_nopriv_my_action', 'my_action'); 

替換
my_action(); 

您可以輕鬆追蹤錯誤;

2)檢查控制檯日誌是否有任何javascript錯誤。

1

路徑的問題是提供您的服務器的路徑ajax/ajax_exp.php

<script> 
function loginJs() 
{ 

var xmlhttp; 
if (window.XMLHttpRequest) 
{// code for IE7+, Firefox, Chrome, Opera, Safari 
xmlhttp=new XMLHttpRequest(); 
} 
else 
{// code for IE6, IE5 
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 

xmlhttp.open("GET","ajax/ajax_exp.php",true); 

xmlhttp.onreadystatechange=function() 
{ 

alert("State "+xmlhttp.readyState+" Status "+xmlhttp.status); 
if (xmlhttp.readyState==4 && xmlhttp.status==200) 
{ 
    alert(xmlhttp.responseText); 
} 
} 
xmlhttp.send(); 
} 
</script> 
+0

在此路徑中沒有類似'ajax/ajax_exp.php'的路徑..請參閱URL的 – user3202144

+0

您可以創建一個像這樣的路徑並使用 –

0

如果其他人是否有同樣的問題,這是我做的,現在它的作品!

的Javascript

xmlhttp.send(null);

替換xmlhttp.send(); PHP

<?php 
$username = "user"; 
$password = "password"; 
print $username; 
?>