使用Javascript从远程php文件接收变量?

时间:2013-10-11 01:16:01

标签: javascript php ajax json cordova

我需要使用javascript从远程php文件中检索变量。我这样做是使用phonegap,所以同样的原始政策不适用。我想我需要使用json / ajax,但我找不到任何教程告诉我如何做到这一点。

是否像在php文件中一样简单:

<?php
    $var = 'stuff';
    echo json_encode( $var );
?>

在我的申请中有类似的内容:

 $.getJSON('mysite.com/test.php', function( data ) {
                           $.each( data, function( i, entry ) {
                              alert( entry );
                           });

或者这是完全错误的做法?任何帮助都会很棒,谢谢。

2 个答案:

答案 0 :(得分:2)

所以对于初学者here are the docs on JQuery's ajax&amp; the docs for JQuery's getJSON;最后a slightly dated but decent tutorial解释了如何开始使用原始.JSON文件的基础知识。

通常在我处理JSON时,我正在与Web API进行交互;而且大多数时候他们都是RESTful api's ...创建一个比你那里复杂一点但是你的思维过程正在进行中。

这是一个工作访问点,谷歌财务股票报价api在微软上运行查询:

http://finance.google.com/finance/info?client=ig&q=MSFT

和一个json调用的例子(使用jsonp访问外部URL):

$.ajax({
  url: 'http://finance.google.com/finance/info?client=ig&q=MSFT',
  dataType: 'jsonp',
  success: function(data){
    console.log( data );
  }
});

为了让事情变得更轻松,我会尝试将工作分解为两个步骤...首先获得一个接受来自您知道正在运行的API的数据(即上面的谷歌财务)...然后继续下一步尝试在php中编写自己的WebAPI的步骤(例如,假设您想要将“变量”构建到数据库中,或者比平面php文件更有用)。通过这种方式,您可以更轻松地调试,减少脱发

答案 1 :(得分:2)

我正在使用jquery和 我以前在PHP中这样做(如果使用json):

<?php
$var = 'stuff';
echo '{"var":"'.$var.'"}';
?>

它将返回json。

和ajax:

$.ajax({
url : "mysite.com/test.php",
dataType : "json",
data :"",
type : "POST",
success : 
function (data){
alert(data.var);
}
});

(如果您只想从“mysite.com/test.php”获取json,则不需要ajax中的数据和类型);