我可以找到很多類似的問題,但沒有什麼幫助,所以必須發佈我自己的這個問題的版本。WordPress的Ajax返回'0'
我有2個PHP文件:
- playing.php(包含Web表單,併發送Ajax調用)
- plug_search.php(的形式處理代碼)
之前我開始嘗試使用ajax,表單處理工作完美,查詢按預期工作,並根據搜索參數返回適當的結果。現在,我想使用ajax,所以結果返回到同一頁面,並且它始終返回'0'。我嘗試了(似乎)所能做的一切,排除了最可能的原因(不正確的函數/調用名稱) - 沒有運氣。感覺像一些非常簡單的東西丟失了,我懷疑問題出在函數的聲明中,但是看不到有什麼問題(看起來這個調用從來沒有在plug_search.php中達到處理函數)。我刪除了所有的查詢代碼,只是試圖返回一個簡單的字符串 - 仍然是'0'。 如果你能幫忙,我會很感激!
playing.php
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
function search(){
var plug=$("#autocomplete-dynamic").val();
var ajaxurl = "<?php echo admin_url('admin-ajax.php'); ?>";
if(plug!==""){
$("#result").html();
$.ajax({
type: "GET",
url: ajaxurl,
data: {
action: 'ajax_return_search_results',
plug: 'country'
},
success:function(data){
alert(data);
}
});
}
}
$("#button").click(function(){
search();
});
$('#search').keyup(function(e) {
if(e.keyCode == 13) {
search();
}
});
});
</script>
plug_search.php
<?php
add_action('wp_ajax_ajax_return_search_results', 'myajax_return_search_results');
add_action('wp_ajax_nopriv_ajax_return_search_results', 'myajax_return_search_results');
function myajax_return_search_results() {
echo "Success";
die();
}
?>
plug_search.php - 完整版
function myajax_return_search_results() {
$value = $_GET['plug'];
$value2 = $_GET['country'];
$sql = "SELECT name, image_url, amazon_url, plug_type FROM adapters_list WHERE plug_type = '$value' AND country LIKE '%$value2%'" or die("Error in the consult.." . mysqli_error($link));
$result = $link->query($sql);
while($row = mysqli_fetch_array($result)) { ?>
<div id="output-product" style="border: 1px solid #333; font-family: Helvetica, sans-serif; font-size: 20px;"><?php echo $row["name"] . "<br />";?>
<?php echo "</div>";
die();
}
你確定你的'plug_search.php'文件是在wo加載的嗎? rdpress環境? – 2014-12-04 05:41:02
檢查此代碼http://codex.wordpress.org/AJAX_in_Plugins – 2014-12-04 05:42:11
不是100%確定你的意思是「在wordpress環境中加載」,但我正在使用wordpress網站,這兩個文件位於自定義插件文件夾中正在建設中。 – Kirill 2014-12-04 05:43:21