繁体   English   中英

从页面加载jQuery PHP上的数据库中获取数据

[英]Getting data from database on pageload jquery php

有人可以帮我吗

我想做的是使用HTML5,JQUERY,Json和PHP的电话应用程序。 我无法在其中使用PHP页面,因为它将与Phone Gap Cloud Compliler打包在一起。

我尝试使用许多我在互联网上研究过的脚本和建议,但似乎无法使其正常工作。

在页面上,我需要从数据库中检索数据,我希望使用6个文本框或div来填充页面,该页面或页面是使用对PHP处理页面的页面ajax请求来填充的,该页面获取所需数据并将其形成Json字符串,以下脚本将显示我现在的位置。

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:-

[{ “term1start”: “15年1月4日”, “term1finish”: “15年2月4日”, “term2start”: “15年3月4日”, “term2finish”: “15年4月4日”} ]

我认为这是正确的格式。

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,试图不用代码淹没问题,但是如果需要的话,我会根据要求提出

尝试这个:

$.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>

并尝试查看控制台是否有任何错误?

您应该尝试将错误跨域请求阻止以放置正确的标头

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

其余的代码还可以

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM