php - POST后在AJAX中获取空数据

标签 php jquery ajax

我正在构建一个交易系统,我正在使用 php 来获取一些数据,但是当它到达时它是空的。这是我第一次使用 AJAX,我不知道我做错了什么。这是我的代码:

脚本:

$(document).ready(function() {

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

        //Get the values
        var amount     = $('#amount').val();
        var from       = $('#from').val();
        var to         = $('#to').val();

        var params = 'select * from yahoo.finance.xchange where pair in ("' + from + to +'")';
        console.log( params );
        $.ajax({
            type: "POST",
            url: "currencies.php",
            data: params,
            success: function(data){
                $('#result').html(data);
                alert(data); //I'm alerting because I was not receiving nothing at #result

            }
        });
    });
});

PHP:

$BASE_URL = "http://query.yahooapis.com/v1/public/yql";

$yql_query = $_REQUEST['params'];
$yql_query_url = $BASE_URL . "?q=" . urlencode($yql_query) . "&format=json" . "&env=http://datatables.org/alltables.env";

$session = curl_init($yql_query_url);
curl_setopt($session2, CURLOPT_RETURNTRANSFER,true);
$json = curl_exec($session);

$phpObj =  json_decode($json);
$conversiones = $phpObj->query->results->rate;
$title = new ArrayObject();


$title = "$conversiones->Name";

echo $title;

我输入:

params=select%20*%20from%20yahoo.finance.xchange%20where%20pair%20in%20("MXNUSD")

在 URL 中,查看 PHP 文件是否正常工作。它与货币名称相呼应,但在脚本中未收到。

提前致谢。

编辑:修正了拼写错误。

最佳答案

您需要发送键/值对。您发送的只是一个没有 params 键的值。

key 是您在 php $_REQUEST['params']

中使用的内容

查看浏览器控制台网络选项卡,您不会看到与手动在地址栏中输入的网址相同的网址

尝试

  $.ajax({
        type: "POST",
        url: "currencies.php",
        data: {params: params}, // object for key/value
        success: function(data){
            $('#result').html(data);
            alert(data); 

        }
    });

另请注意,您只能在 php 中打印 json,而无需任何额外的 echo。否则在ajax中会出现json解析错误

仅供引用 - 您可以直接从浏览器向雅虎发出相同的请求,而无需服务器上的 php 代理。请参阅YQL Console

关于php - POST后在AJAX中获取空数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29859718/

相关文章:

php - 如何将 str_replace 与 $row 链接一起使用

jquery - 下拉列表中的值与 JSON 对象不同

javascript - PHP 生成表中的删除按钮,从数据库和页面中删除

jquery - DataTables (serverSide) 在第一次请求时正常,在搜索或重新排序时请求中失败并显示 "[Object object"]

php - 为什么 mysqli 给出 "Commands out of sync"错误?

javascript - 通过查询大量数据减少html 表的加载时间| PHP、HTML、SQLSERVER 2012

PHP - 创建网页的非交互式副本,也许是 PDF?

javascript - 解决首屏内容中的 JavaScript 和 CSS 的选项

用于选择所有类型文本框的 jQuery 选择器

javascript - 在页面加载时以及 setInterval 时运行 JavaScript 函数