【问题标题】:The echo in php is not being displayed back in HTML pagephp 中的回显未显示在 HTML 页面中
【发布时间】:2014-06-13 07:42:29
【问题描述】:

我的应用程序获取当前坐标并检查它是否在 mysql 数据库中。我正在尝试在 html 页面(phonegap 应用程序)上获取 mysql 数据。它在移动设备中完美运行。但在波纹模拟器中,它不显示数据。 PHP 正在将数据发送回 html。我可以通过进入开发人员模式(F12)-> 源-> 波纹文件间接查看数据.. 但是它不会将该数据显示到 html 页面中.. 可能出现什么错误 下面是我在源代码中找到的波纹文件接收代码

jXHR.cb0({"headers":{"date":"Tue, 17 Jun 2014 07:07:51 GMT","server":"Apache","x-powered-by":"PHP/5.2.17","content-length":"181","connection":"close","content-type":"text/html"},"response":" *connected<br>1 somaiya<br>*

您可以看到响应:connected 1 somaiya 是我返回的数据。但它没有显示在html上

.下面是html的代码

<!DOCTYPE html>
<html>
  <head>
    <title>Device Properties Example</title>


<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">

// Wait for device API libraries to load
//

document.addEventListener("deviceready", onDeviceReady, false);

// device APIs are available
//
function onDeviceReady() {
    navigator.geolocation.getCurrentPosition(onSuccess, onError);
}
var lat;
var lon;
// onSuccess Geolocation
//
function onSuccess(position) {

    var element = document.getElementById('geolocation');

    element.innerHTML = 'Latitude: '           + position.coords.latitude + '<br />' +
                        'Longitude: '          + position.coords.longitude  + '<br />' +
                        'Altitude: '           + position.coords.altitude              + '<br />' +
                        'Accuracy: '           + position.coords.accuracy              + '<br />' +
                        'Altitude Accuracy: '  + position.coords.altitudeAccuracy      + '<br />' +
                        'Heading: '            + position.coords.heading               + '<br />' +
                        'Speed: '              + position.coords.speed                 + '<br />' +
                        'Timestamp: '          + position.timestamp                    + '<br />';
lat= position.coords.latitude;
lon= position.coords.longitude;
var xmlhttp;

xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("t01").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","http://geolocation.webatu.com/Radius.php?lat="+lat+"&lon="+lon,true)
xmlhttp.send();
}

function onError(error) {
    alert('code: '    + error.code    + '\n' +
          'message: ' + error.message + '\n');
}
</script>

</head>
<body>
<p id="geolocation">Finding geolocation...</p>
<div id="main">
<div id="t01"></div>
  </div>
  </body>
</html>

【问题讨论】:

    标签: php html mysql cordova ripple


    【解决方案1】:

    尝试在您的波纹模拟器设置中将跨域代理设置为远程

    【讨论】:

    • 我确实将它设置为远程,但它没有工作!谢谢回复:)
    【解决方案2】:

    除了 XMLHttpRequest(),你可以尝试使用 JSON jQuery 可能会更容易。它有一些内置功能。

    Var Passvalues = 'lat="+lat+"&lon="+lon',
     jQuery.ajax({
    
    
    url : geolocation.webatu.com/Radius.php',    
    data: Passvalues,
    dataType: 'JSON',
    type: 'POST',
    success: response_function
    });
    
    response_function(response){
     if(response.status == 1){
     //success response
     alert(response.message);
    
      document.getElementById("t01").innerHTML
      =response.message;
     }else{
      //failure response 
      alert(response.message);
      return false;
     }
     }
    

    【讨论】:

    • 我会检查这个并尽快回复你。谢谢你的时间和帮助:)
    • Ripple 不支持 Json jquery :(
    猜你喜欢
    • 1970-01-01
    • 2013-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多