A PHP Error was encountered

Severity: 8192

Message: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead.

Filename: mysql/mysql_driver.php

Line Number: 303

Введение в Ajax

Введение в Ajax

Автор: n0one.
Опубликовано 15 января 2012
в рубрике Ajax
и помечено как: , , .

Просмотров: 7534.
Подписаться на комментарии по RSS.

Введение в Ajax

Привет, дорогой читатель. В этой статье я расскажу тебе о том, что такое ajax и с чем его едят.Ajax(Asynchronous Javascript And Xml)- технология для взаимодействия с сервером без перезагрузки страниц. Преимущество ajax в том, что при его использование можно изменить часть web страницы, не перезагружая всю страницу целиком, а только лишь нужную нам часть. Сейчас мы рассмотрим простой пример использования ajax.

Создадим файл "ajax.html", в него вставим этот html код:

<html>
<head>
<title>Пример асинхронной передачи данных</title>
</head>
<body>
<input value="Сколько время?" onclick="now_time()" type="button">
<div id="time">Здесь будет ответ сервера
</body>
</html>

Теперь рассмотрим данный html код.

При нажатие на кнопку "сколько время?" будет вызвана java script функция now_time(). Функция пошлет запрос на сервер, сервер обработает запрос и вышлет нам ответ в div time.

Теперь мы рассмотрим саму функцию now_time():

Во-первых, для асинхронного обмена данными мы будем использовать специальный объект XmlHttpRequest, который умеет отправлять запрос и получать ответ от сервера.

function getXmlHttp(){
  var xmlhttp;
  try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
    try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
      xmlhttp = false;
    }
  }
  if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
    xmlhttp = new XMLHttpRequest();
  }
  return xmlhttp;
}

Подробно про этот объект вы можете прочитать тут.

А теперь про саму функцию now_time():

function now_time() {
var req = getXmlHttp() // создадим объект для запроса к серверу
var statusElem = document.getElementById('time') // id div`a  в котором будет отображатся ход выполнения скрипта
req.onreadystatechange = function() {  // onreadystatechange - активируется при получении ответа сервера
if (req.readyState == 4) { // если запрос закончил выполняться
statusElem.innerHTML = req.statusText // показать статус (Not Found, ОК..)
if(req.status == 200) { // если статус 200 - выдать ответ пользователю
alert("Ответ сервера: "+req.responseText); // выдаем ответ
}
}
}
req.open('GET', '/time.php', true);   // задаем адрес подключения скрипта
/* объект запроса подготовлен: указан адрес и создана функция onreadystatechange
     для обработки ответа сервера */
req.send(null);  // отослать запрос
statusElem.innerHTML = 'Ожидаю ответа сервера...' 
}

Серверный обработчик, к которому обратился наш ajax-запрос (в примере это time.php), по сути, ничем не отличается от обычной php страницы.

Теперь мы перейдем к файлу time.php

<?php
sleep(2);
setlocale(LC_TIME, 'ru_RU.CP1251', 'rus_RUS.CP1251', 'Russian_Russia.1251');
$time = strftime("%H:%M:%S\n");
$unix_time = time();
echo "<p>Человеческое время: $time <br> Unix время: $unix_time";
?>

Оставьте комментарий!

Гость
Комментатор / хотите им стать

Чтобы стать комментатором введите email и пароль. Напишите комментарий. В дальшейшем ваша связка email-пароль, позволит вам комментировать и редактировать свои данные. Не забудьте про активацию (инструкция придет на ящик, указанный при регистрации).

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

(обязательно)