Время:
Новых сообщений: Нет
Вы на форуме дней
Ваша группа: Гость
Ваш IP: 3.142.124.119
Logical-Portal — молодежный портал со своей изюминкой, каждый сможет найти что-то интересное и полезное для себя, например наш форум общения с которым вам обязательно нужно ознакомиться.
  • Страница 1 из 1
  • 1
Модератор форума: Hawk  
Ajax - Пример вызова XMLHttpRequest
Сообщение оставлено 26.02.2012 в 13:23:21 | Сообщение #1
Пример вызова XMLHttpRequest и загрузкой полученных данных в


Code
<?php
//обработчик изминения статуса запроса   
function processReqChange() {   
   if ( req.readyState == 4 ) {   
     if ( req.status == 200 ) {   
       document.getElementById("getRequestData").innerHTML = req.responseText;     
       }   
     else   
      {   
       document.getElementById("getRequestData").innerHTML = req.statusText;   
      }   
   }   
}   

//функция посылки запроса без перезагруски страницы   
function sendRequest( method, url ) {   
   if ( window.XMLHttpRequest )   
     req = new XMLHttpRequest();   
   else if ( window.ActiveXObject )   
     req = new ActiveXObject( "Microsoft.XMLHTTP" );   
   if ( req ) {   
     req.onreadystatechange = processReqChange;   
     req.open( method, url, true );   
     req.send( null );   
   }   
}   

//функция отправки по POST запросу на url   
function GetPhpDataText(url) {   
    var rt = document.getElementById("getRequestData");   
    if (rt) {   
     rt.innerHTML = "Отправка запроса....";   
    }     
    sendRequestTextData( "POST", url );        
}
?>  


Пример запуска
Code
<div id="getRequestData"></div>  
<input type="button" value="Получить данные" name="getDataButton"  
  onclick=GetPhpDataText("data/getSource.php?  
uid=1&ikdata=ip&action=get")/>


Обработка данных в php скрипте:
Для корректного получения ответа от php скрипта - скрипт перед выдачей информации должен послать заголовок, а если точнее - два заголовка: Тип данных и их кодировку.
Пример отдачи запросу текста:
1 - необходимо установить кодировку текста
Code
<?php
header("Content-type: text/plain; charset=windows-1251");
?>  


2 - также необходимо запретить кэширование страницы (если нехотите получать одно и тоже )
Code
<?php
header("Cache-Control: no-store, no-cache, must-revalidate");   
header("Cache-Control: post-check=0, pre-check=0", false);
?>


либо установить следующие заголовки
Code
<?php
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");  // disable IE caching   
header("Last-Modified: " . gmdate( "D, d M Y H:i:s") . " GMT");    
header("Cache-Control: no-cache, must-revalidate");    
header("Pragma: no-cache");
?>


а далее можно выводить и сам текст
Пример php скрипта который просто возвращает произвольное число
Code
<?php
header("Content-type: text/plain; charset=windows-1251");   
  header("Cache-Control: no-store, no-cache, must-revalidate");   
  header("Cache-Control: post-check=0, pre-check=0", false);   
  function GetRandom() {    
     $DID = (integer) 0;    
     srand ((double) microtime() * 10000);    
     $DID = rand();         
     return $DID;               
   }     
  print GetRandom();
?>
 
Мой прошлый ник - DuGGes
Вначале прочти правильно, а потом уже возмущайся © Domby or DuGGes
 
   
  • Страница 1 из 1
  • 1
Поиск:
 
Графика от: Megas, GraFOS | Дизайн сверстал E.A.
Хостинг от uCoz
Яндекс.Метрика