2011-08-17 112 views
3

我一直在使用android sdk在eclipse中使用phonegap应用程序,并试图弄清楚如何在phonegap应用程序中从服务器的数据库中显示动态html页面。在phonegap应用程序中显示动态html页面

我想完成的是;

有一个网页,例如www.demo.com/login,phonegap应用程序将登录到该网页,并将显示www.demo.com/dashboard.html,因此它会拍照,访问构建在GPS等。

是否有可能phonegap应用程序可以像网络浏览器一样使用,并显示动态html页面,以及有权访问本机功能?我是否必须运行phonegap应用程序将获得的Web服务并使用该Web服务发布json对象,然后使用名为mustache.js的js或其他方法呈现html代码?

我真的很感谢你的帮助

非常感谢

回答

5

您可以使用PhoneGap的PHP和jQuery的Ajax获得的内容。在文件头加载jQuery库。在功能onBodyLoad(),把Ajax调用的PHP文件:

$('#content').load('http://www.example.com/test.php'); 在HTML会议,把DIV ID =“内容”你要显示的内容在哪里。

PHP:

for($i=1; $i<=10; $i++) { 
    echo '<p>Dinamic content coming from test.php! Value: ' . $i . ' of 10.</p>'; 
} 

HTML会打印:

<p>Dinamic content coming from test.php! Value: 01 of 10.</p> 
<p>Dinamic content coming from test.php! Value: 02 of 10.</p> 
<p>Dinamic content coming from test.php! Value: 03 of 10.</p> 
<p>Dinamic content coming from test.php! Value: 04 of 10.</p> 
<p>Dinamic content coming from test.php! Value: 05 of 10.</p> 
<p>Dinamic content coming from test.php! Value: 06 of 10.</p> 
<p>Dinamic content coming from test.php! Value: 07 of 10.</p> 
<p>Dinamic content coming from test.php! Value: 08 of 10.</p> 
<p>Dinamic content coming from test.php! Value: 09 of 10.</p> 
<p>Dinamic content coming from test.php! Value: 10 of 10.</p> 

将内容发送到另一个页面和登录的用户,你可以像

$.get('login.php?name=user', function(data) { 
    $('#content').html(data); 
}); 

和登录.php可能有这样的:

if (isset($_GET['name'])) { 
    $name = $_GET['name']; 
    echo "Name: $name"; 
} else { 
    echo "Please enter a valid name!!"; 
} 

为了让您的登录安全,您可以使用POST方法,如下所述:

$('#form').submit(function() { 
    $.post('login.php', $('#form').serialize(), function(data) { 
     $('#content').html(data); 
    }); 
    return false; // to avoid page going to login.php file 
}); 

而且login.php中

if(!empty($_POST)) { 
    $user = $_POST['name']; 
    $pass = $_POST['password']; 
    // db query and stuff goes here... 
    echo "Worked!"; 
} else { 
    "Enter values!"; 
} 
+0

非常感谢狮子座。另一个问题;我如何能够以类似于上述描述的方式完成https请求?你有什么建议吗?再次感谢... – Pinchy

1

jqueryMobile + PhoneGap的是一个方法能够快速完成任务。对于ajax调用,只需点击一个url即可将数据作为json并动态呈现。

PhoneGap提供了一些JavaScript函数来访问相机,GEO位置和类似的东西。

检查了这一点:

http://www.mobiledevelopersolutions.com/home/announce-1/mds11eclipsepluginforphonegaponandroidreleasestoday-jquerymobileandsenchatouchadded

Wiki页面: http://wiki.phonegap.com/w/page/36868306/UI%20Development%20using%20jQueryMobile

+0

太谢谢你了... – Pinchy

相关问题