0

我目前有一个 $.getJSON 调用,它工作正常,如下所示。

var jsonUrl = "http://www.somesite.co.uk/jsonusv.php?callback=?";                   
$.getJSON(jsonUrl,function(zippy){
...some code
}

但是,我希望传递一个变量,以便 PHP 脚本可以使用它的 $_GET[''] 值并定制数据。

我厌倦了愚弄但无法得到任何想法的工作?

var jsonUrl = "http://www.somesite.co.uk/jsonusv.php?callback=?&value=65";

php 页面看起来像这样,这已被剥离。我确实尝试检测 $_GET['value'] 但它没有用。

<?PHP
header("content-type: application/json");  
$theSqlquery = "SELECT * FROM table ORDER BY timestamp DESC LIMIT 20";   
$result131 = mysql_query($theSqlquery);

     if ($result131)
     {

        //make up Json string in $temp

    echo $_GET['callback'] . '(' . $temp . ');';
     }                 
?>
4

3 回答 3

1

我建议callback=?从您的 jsonUrl 中删除

于 2012-11-29T19:30:33.907 回答
0

尝试将参数传递给data函数调用的参数而不是查询字符串:

var jsonUrl = "http://www.somesite.co.uk/jsonusv.php";
$.getJSON(jsonUrl, {
    callback: "your callback val",
    value: "65",
  },
function(zippy){
...some code
});

http://api.jquery.com/jQuery.getJSON/

然后你可以访问它们$_POST

请注意,echo将假定的 json 结果发送回您的$.getJSON()方法调用,例如,success()如果它成功。如果你知道方法中的js方法名success(),并且只需要传递它$temp,试试这个

var jsonUrl = "http://www.somesite.co.uk/jsonusv.php";
$.getJSON(jsonUrl, {
    value: "65"
  },
function(zippy){
    callbackMethod(zippy[0]);
});

并在你的 php

$output = array();
$output[0] = $temp;
echo json_encode($output);
于 2012-11-29T19:30:42.697 回答
0
var jsonUrl = "http://www.somesite.co.uk/jsonusv.php?callback=?";                   
$.getJSON(jsonUrl,{lastdatetime: "",},function(zippy){....

似乎工作...

于 2012-12-04T17:38:45.027 回答