在phonegap应用程序中显示动态html页面

时间:2011-08-17 07:31:58

标签: html html5 dynamic cordova

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

我想要完成的是;

有一个网页,例如www.demo.com/login,而phonegap应用程序将登录该网页并显示www.demo.com/dashboard.html,因此它将拍照,访问内置版本gps等..

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

我真的很感谢你的帮助

非常感谢

2 个答案:

答案 0 :(得分:6)

您可以将PhoneGap与PHP和jQuery Ajax结合使用来获取内容。在文件头加载jQuery库。在函数onBodyLoad(),放置了对PHP文件的Ajax调用:

$('#content').load('http://www.example.com/test.php'); 在HTML会话中,将div id =“content”放在要显示内容的位置。

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);
});

你的login.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!";
}

答案 1 :(得分: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