【问题标题】:Use Javascript to receive variable from remote php file?使用 Javascript 从远程 php 文件接收变量?
【发布时间】:2013-10-11 01:16:00
【问题描述】:

我需要使用 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 );
                           });

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

【问题讨论】:

标签: javascript php ajax json cordova


【解决方案1】:

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

通常当我处理 JSON 时,我正在与 Web API 进行交互;并且大多数时候它们是 RESTful api...创建一个比您拥有的 API 稍微复杂一些,但您的思维过程正在走上正轨。

这是一个在微软上运行查询的谷歌金融股票报价 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 文件更有用的东西)。这样你就可以调试更轻松,脱发更少

【讨论】:

  • 感谢您的链接,我发现从好的例子中学习最容易
【解决方案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中的数据和类型);

【讨论】:

  • 谢谢,如果直接在浏览器中访问,是否需要打印在页面上?
猜你喜欢
  • 1970-01-01
  • 2021-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-17
相关资源
最近更新 更多