任何人都可以帮助我
我想做的是使用HTML5,JQUERY,Json和PHP的手机应用程序。我不能在这里使用PHP页面,因为我将使用Phone Gap Cloud Compliler打包它。
我尝试过使用我在互联网上研究过的许多脚本和建议,但似乎无法让它发挥作用。
在页面上,我需要从数据库中检索数据,我希望使用页面ajax请求填充6个文本框或div,以获取所需数据并将其形成Json字符串的PHP处理页面,以下脚本将显示我目前的位置。
PHP页面: - 这对于从数据库获取数据以及我已经完成的研究非常有效,将其分成Json格式
PHP脚本********************************************* *
<?php
include_once 'db_connect.php';
header("Content-Type: application/json"); //this will tell the browser to send a json object back to client not text/html (as default)
session_start();
$return_arr = array();
$sql = "SELECT * FROM `autumnTerm`"; //query
$result = mysqli_query($mysqli, $sql);
while($row = mysqli_fetch_array($result)) {
$row['term1start'] = date('d-m-y', strtotime($row['term1start']));
$row['term1finish'] = date('d-m-y', strtotime($row['term1finish']));
$row['term2start'] = date('d-m-y', strtotime($row['term2start']));
$row['term2finish'] = date('d-m-y', strtotime($row['term2finish']));
$row_array['term1start'] = $row['term1start'];
$row_array['term1finish'] = $row['term1finish'];
$row_array['term2start'] = $row['term2start'];
$row_array['term2finish'] = $row['term2finish'];
array_push($return_arr,$row_array);
}
echo json_encode($return_arr);
?>
这将返回以下json: -
[{&#34; term1start&#34;:&#34; 15年1月4日&#34;&#34; term1finish&#34;:&#34; 15年2月4日&#34 ;,&#34; term2start&#34;:&#34; 15年3月4日&#34;&#34; term2finish&#34;:&#34; 15年4月4日&#34;}]
我相信它是正确的格式。
Jquery: -
<script>
我认为我认为文档就绪应该在页面加载时运行jquery脚本
$(document).ready(function() {
与变量关联的处理页面地址
var url = "http://www.newberylodge.co.uk/webapp/includes/retrieveAutumn.inc.php";
定义请求元素的ajax请求
$.ajax({
type: "POST",
cache: false,
url: url,
dataType: "json",
success: function(data) {
$('#termoneError').text('The page has been successfully loaded');
},
error: function() {
$('#termoneError').text('An error occurred');
}
});//ajax request
});//ready function
</script>
如果有人愿意帮助我解决这个问题,我会非常感激,我一直试图解决这个问题超过一个星期
我没有发布html试图不用代码淹没问题,但如果需要我将根据要求提出
答案 0 :(得分:0)
试试这个:
$.ajax({
type: "GET",
cache: false,
url: url,
dataType: "json",
success: function() {
console.log()
$('#termoneError').text('The page has been successfully loaded');
},
error: function() {
$('#termoneError').text('An error occurred');
}
});//ajax request
});//ready function
</script>
并尝试查看控制台是否有任何错误?
答案 1 :(得分:0)
您应该尝试将错误的跨源请求阻止以放置正确的标头
header('Content-Type: application/json; charset=utf-8');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET,POST,OPTIONS');
header('Access-Control-Allow-Credentials: true');
其余代码没问题