2013-06-12 35 views
2

我想连接到远程服务器,并基本上运行我的应用程序在该服务器上的文件。我能够连接到服务器,但我不知道如何执行该服务器上的PHP文件。这是我的本地目录连接到服务器的JavaScript函数:如何使用phonegap运行外部php脚本?

function test2(){ 
    $.getJSON("http://sampleserver.com/check.php?var=test&callback=?", { 
    success:function(data){ 
     alert("Working"); }, 
    error: function() { 
    alert("Error"); 
} 
}); 

} 

这提醒“工作”。这是我在远程服务器上的check.php:

<?php 
echo "hello"; 
echo $_GET['jsoncallback']; 
?> 

为什么你不打印到屏幕上?一旦我连接,我将如何实际执行这个脚本?

+0

我认为你的getJON语法是错误的。看看文档。 – Imperative

回答

0

这里只是一个例子:

var url = '/m.profile_msg/0/send/'; 
var dataString = 'msg_body='+ msg_body; 
$.ajax({ 
    type: "POST", 
    url: url, 
    data: dataString, 
    success: function(data) { 
     try { 
      //var data = jQuery.parseJSON(data); 
      alert(data); 
     } catch(e) { 
      alert(data); 
     } 
    } 
}); 

而在PHP端:

<?php 
$xxarray = array('key' => 'value'); 
echo json_encode($xxarray); 
?> 
0

你的脚本已经在执行,但是你正在做一个AJAX调用,并且只是用你自己的消息发出警报,你没有对响应做任何事情,它将包含你的hello文本。

+0

有没有办法运行的PHP脚本,因为它在我面前的屏幕上运行,而不是只是让文本回来? – user2463517

+0

不适用于Ajax。 Ajax只能接受一个响应。它无法将长时间运行的响应拆分为多个回调。请参阅http://stackoverflow.com/questions/16236475/handling-a-big-slow-incoming-ajax-response-in-real-time – nullability

+0

我明白了,那么远程连接到服务器并运行脚本? – user2463517

0

要运行远程脚本 - 尝试做你的Ajax调用PHP脚本,并有PHP脚本shell执行某事。但我不会等待回复 - 而是将状态码返回给移动设备,表明脚本正在运行。