Intereting Posts

Как установить соединение с файлом PHP на веб-сервере с помощью PhoneGap (приложение для Android) в режиме реального времени?

Приведенный ниже код работает отлично, используя сервер wamp на localhost. Он вызывает php-файл, который подключается к базе данных MySql и возвращает данные.

Однако я пытаюсь создать mobileapp с помощью PhoneGap. Код ниже находится в файле HTML. Мои вопросы: как мой html-файл установит соединение с сервером с помощью ajax, как только я загружу его в телефонную записях и сгенерирую файл .apk. Так как приведенный ниже код просто вызывает файл getbustime.php без каких-либо параметров веб-сервера.

Я разработал приложение в телефоне с помощью HTML, jQueryMobile, Ajax и теперь хочу загрузить справку?

function getBusTime(){ if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("resultLogBus").innerHTML=xmlhttp.responseText; // $('#resultLogBus').html(xmlhttp.responseText).selectmenu( "refresh"); } } xmlhttp.open("GET","getbustime.php?direction="+direction+"&busnum="+busnum+"&dayofweek="+dayofweek+"&stopname="+stopname+"&starttime="+starttime+"&endtime="+endtime,true); xmlhttp.send(); }//End of function getBusTime </script> 

В принципе, вам нужно установить полный путь к файлу server / php в вашем вызове ajax, например:

 xmlhttp.open("GET","http://<YOUR_SERVER_NAME>/getbustime.php?direction="+direction+"&busnum="+busnum+"&dayofweek="+dayofweek+"&stopname="+stopname+"&starttime="+starttime+"&endtime="+endtime,true); 

Пара других вещей, которые вы также можете сделать в зависимости от ваших обстоятельств:

  1. установите этот тег в phonegap config.xml:

    <access origin="*" />

  2. Я делаю всю свою телефонную раскрутку в Chrome и обеспечивает защиту Cross-Origin. Как только вы попытаетесь протестировать реальный адрес своего сервера (вместо localhost), Chrome заблокирует его, если сервер не настроен для CORS. Легкий способ включить это для тестирования в PHP на вашем сервере:

    header('Access-Control-Allow-Origin: *');
    header('Access-Control-Allow-Headers: X-Requested-With, Content-Type');