将php内容加载到Phonegap中

时间:2013-12-18 16:12:34

标签: javascript php jquery html5 cordova

我正在使用phonegap和dreamweaver来设置一个小应用程序,但我遇到了一个问题,因为我是一个新的手机屏幕。

我有一个HTML5文件,我的css文件也是config.xml形成我的图标,启动画面等。 Phonegap只读取index.html而不读取index.php文件。

所以我制作了一个grab.php文件来从我的托管中提取一些数据。 Localhost一切都很好,但是当我构建应用程序时,它不会加载数据......

这是我的html文件和grab.php文件。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="format-detection" content="telephone=no" />
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
<title>Celebrity.Com | Android App</title>
<link rel="stylesheet" type="text/css" href="mobile_css/style.css" media="all" />
<script type="text/javascript" src="js/jquery-2.0.3.min.js"></script>
<script type="text/javascript" src="phonegap.js"></script>
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript">
app.initialize();
</script>

<script type="text/javascript">
$(document).ready(function() {
    $(".loa").load("grab.php");
});
</script>

</head>

<body>

<div class="headerHolder"><div class="logo"></div></div>
<div style="width:100%; height:20px; float:left; margin-bottom:1px;"></div>

<div class="loa" style="width:100%; padding-bottom:5px;">

<div style="clear:both;"></div>
</div>

</body>
</html>

和grab.php

<?php
require "connectiondb.php";
$bann = mysql_query ("SELECT * FROM info ORDER BY a_name");
while($bannerl = mysql_fetch_assoc($bann)) {
echo '
<div class="articleHolder">
<div class="imageholder"><img src="'.$bannerl['a_image'].'" width="180" height="120"/></div>
<div class="controlz"><span style="float:left;">'.$bannerl['a_name'].'</span><img style="width:65px; height:65px; float:right;" src="images/details.png" width="65" height="65" border="0"></div>
</div>';
}
?>

我尝试将grab.php文件上传到我的服务器并从此处加载,但我认为该策略不允许我运行,从其他服务器加载文件。

1 个答案:

答案 0 :(得分:2)

您需要将主机置于白名单(http://docs.phonegap.com/en/1.9.0/guide_whitelist_index.md.html

然后您必须在Phonegap配置中指定您的域名:

然后你可以发出ajax请求,但是你必须指定域,所以需要像:

<script type="text/javascript">
$(document).ready(function() {
    $(".loa").load("http://yourdomain.com/grab.php");
});
</script>
相关问题