2017-04-03 64 views
0

我试图从ajax发送值到php和检索它只是为了测试一切工作,当我点击按钮来测试我有错误和警报('失败'))出现,我如何解决它以获得成功?感谢php将值发送到ajax faild错误

阿贾克斯:

var a = "test"; 
    $.ajax({ 
      url: "search.php", 
      dataType: "json", 
      data: a , 
      success: function(data) { 
       alert('Successfully'); 
      }, 
      error: function(data) { 
       alert('Failed'); 
      } 
     }) 

PHP:

<?php 
     $pictures = "img1"; 
     echo json_encode($pictures); 
    ?> 
+0

忘记'类型: 'POST''或'' GET''。 – PHPglue

回答

1

我稍微改进你的代码和它的作品。

var a = "test"; 
    $.ajax({ 
     type: 'POST', 
     url: 'search.php', 
     data: 'a=' + a, 
     dataType: 'json', 
     cache: false, 
     success: function (result) { 
      alert('Successful'); 
     }, 
     error: function (result) { 
      alert('Failed'); 
     } 
    }); 
+0

谢谢,但我得到了同样的错误,我换掉了类型:'POST',类型:'GET',仍然不起作用 –

+0

你能分享你的整个代码吗? – cosmoonot

+1

您是否收到任何其他错误?检查浏览器控制台。 – cosmoonot

0

如果您要求JSON,请使用jQuery中的$ .getJSON,它会将JSON解析为您的JSON对象。

似乎你没有从服务器返回实际的JSON,也许这是什么导致了错误。
如果你看到'失败'的信息可能是500错误,这是一个服务器错误。

试试以上代码。

的Javascript:

var a = "test"; 

$.getJSON("search.php", { 
    a: a 
}, function (json) { 
    console.log(json); 
}); 

PHP:

<?php 
$pictures = ["img1"]; 
echo json_encode($pictures); 

这个唯一的办法不行,就是如果你对你的网络服务器配置一个巨大的错误。

0

你的AJAX是错误的,它应该是:

var a = "test"; 
$.ajax({ 
    type: "POST", 
    url: "search.php", 
    dataType: "json", 
    data: {a:a}, 
    success: function(data) { 
     alert('Successfully'); 
    }, 
    error: function(data) { 
     alert('Failed'); 
    } 
});