#php #html #mysql #cordova #ripple
#php #HTML #mysql #кордова #Пульсация
Вопрос:
мое приложение получает текущие координаты и проверяет, есть ли они в базе данных mysql. я пытаюсь получить данные mysql на странице html (приложение phonegap). он отлично работает на мобильных устройствах. но в эмуляторе ripple данные не отображаются. PHP отправляет данные обратно в html. я могу видеть данные косвенно, перейдя в режим разработчика (F12) -> источники -> файл ripple.. Но он не отображает эти данные на странице html.. Что может быть возможной ошибкой ниже, так это полученный ripple file код, который я нашел в источниках
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 amp;amp; xmlhttp.status==200)
{
document.getElementById("t01").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","http://geolocation.webatu.com/Radius.php?lat=" lat "amp;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>
Ответ №1:
Попробуйте установить для междоменного прокси-сервера значение Remote в настройках вашего эмулятора ripple
Комментарии:
1. Я установил его на удаленный, но он не сработал!! Спасибо за ответ 🙂
Ответ №2:
Вместо XMLHttpRequest(), вы можете попробовать с помощью JSON jQuery может быть easier.it наличие какой-то встроенной функции.
Var Passvalues = 'lat=" lat "amp;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;
}
}
Комментарии:
1. я проверю это и отвечу вам как можно скорее. спасибо за время и помощь 🙂
2. Ripple не поддерживает Json jquery: (