Воскресенье, 19.05.2024, 19:18
Приветствую Вас Гость | RSS
Меню сайта
Категории раздела
Тесксты от Автора [1]
Тесксты от Автора
Интересные статьи по программированию [2]
Интересные статьи по программированию, а также веб разработки
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » 2013 » Февраль » 28 » Асинхронные запросы, ajax
23:32
Асинхронные запросы, ajax
  

Асинхронные запросы - жутко звучащая формулировка, особенно для новичка в области программирования, позволяют освободить пользователя от мельтешащих обновлений страницы и реализуют работу с сайтом в пределах одной страницы, блоки которой обновляются в зависимости от действий пользователя. В общем-то на выходе всё прекрасно и уместно, правда осуществление данного механизма на сайте не так проста, как думается. Давайте перейдем к рассмотрению базовых знаний необходимых для создания асинхронных запросов. Может даже кому-то станет потешно, но желательно понимание HTML :), следом нужно ведать javascript, после необходимы знания в php и, (само собой) разумеется же MySQL. С точки зрения программирования, план работы асинхронного запроса будет выглядеть следующим образом:

1. юзер на странице активирует нажатием какой-либо зрительный компонент, что в свою черед влечет к выполнению пункта 2;

2. активирование визуального элемента сайта приводит к вызову javascript функции [ajax_request], в которой и происходит разновременный запрос к веб серверу;

3. сервер, приняв задание, анализирует его, выполняет все необходимые действия и отдает отклик, "Выкрикивая" его с помощи функций echo или print;

4. отзыв сервера приходит в [ajax_request] и происходит обработка ответа от веб сервера;

5. спустя время, после обработки ответа, информация выводятся на экран используя атрибут .innerHTML dom элементов страницы.

Я обязан остеречь Вас от реализации данного механизма для полной навигации по сайту, этот вид навигации повлечет за собой неимение истории в браузере, что дико отрицательно будет воспринято 99% процентами пользователей, соответственно, этот приём и вообще асинхронные запросы вернее использовать в формах проверки данных, при поиске, или же в полях подсказок, а также в некоторых других случаях. 

Реализация функции ajax_request:
JAVASCRIPT
**************************************************************
function ajax_request ()
{
   // Вызов функции инициализации объекта XMLHttpRequest
   // REQUEST
   var request = CreateRequest();
   //***************** запрос отправляется вручную.
   USER_ID=1; 
   message ="hello";
   // URL для подключения
   var url = "agregator.php?task=ADD_MESSAGE&MSG=" +message + "&RECIEVER_ID="+USER_ID+"&random="     + Math.random(); // random (случайное число) - чтобы не было глюков с кешированием
   request.open("GET", url, true);
   request.onreadystatechange = updatePage;
   request.send(null);
   function updatePage()
   {
      if (request.readyState == 4)
         if (request.status == 200)
         {
               // Вызов функции обработки ответа и передача ей ответа
                tmp=request.responseText;
                document.getElementById('MSG').innerHTML=tmp; // помещаем ответ сервера в эелемент MSG
                delete request;
         }
         else
        {
            alert("Сервер не ответил");
         }
   }
}

function CreateRequest()
{
   request = new XMLHttpRequest();
   try {
   request = new XMLHttpRequest();
   } catch (trymicrosoft) {
   try {
   request = new ActiveXObject("Msxml2.XMLHTTP");
   } catch (othermicrosoft) {
   try {
   request = new ActiveXObject("Microsoft.XMLHTTP");
   } catch (failed) {
   request = false;
   }
   }
   } if (!request) { alert("Ошибка инициализации XMLHttpRequest! Возможно\n" +
   "ваш браузер не поддерживает этот объект.");
   }
return request;
}
****************************************************************
***PHP***
$task=$_GET['task'];
switch ($task)
{

   case "
ADD_MESSAGE ":
       $ID=$_GET['
RECIEVER_ID '];
       $message=
$_GET[' MSG '];
       RecordMSG( $message );
       echo "Сообщение записано!";
       break;
}

*********
***HTML***
<div id=' MSG '></div>  
В этом элементе появится ответ сервера.
**********



Категория: Интересные статьи по программированию | Просмотров: 2097 | Добавил: Kamillorn | Теги: php, mysql, Асинхронные запросы, html, сайт, javascript | Рейтинг: 0.0/0
Всего комментариев: 4
4 Sownbsc  
0
Вы очень полезный интернет-сайт; не мог сделать это без тебя!
посмотрите также мою страничку и дайте ей оценку

http://clrobur.com/bbs/board.php?bo_table=free&wr_id=940701 брауни с шоколад
http://cafe.sangyeok.org/bbs/board.php?bo_table=free&wr_id=473542 добър естетичен дерматолог софия
http://www.dong-joo.co.kr/bbs/board.php?bo_table=free&wr_id=620813 перални за вграждане bosh вето
http://www.dybrush.co.kr/bbs/board.php?bo_table=free&wr_id=124938 почивка в римини 2024 пролет

=0090=0=

3 Aydenmovex  
0
When using the platform without a paid subscription, users can create a profile, add eight images, view other profiles and send and receive messages. https://www.bestbuydir.com/TA_343515.html

Quand'anche is the place to be if you're looking for uncomplicated, risposta negativa-strings-attached hookups without the pressure to define the relationship. https://www.reddit-directory.com/FM_588898.html

Specifying the age range and gender you're looking for Durante a Compagno does little to narrow down your options. That might be impalpabile for a strict hookup, but the app has some bigger problems. Zoosk may boast 40 million members, but it also has plenty of dead or fake profiles, so chances are you'll see some repeat users. https://www.cheaperseeker.com/u/cristinabradley

Certi proveniente da questi dettagli potrebbero dar man forte l’diligenza a suggerirti persone simili a te, invece comprensibilmente devi anteporre tu se aggiungerli ovvero a meno che. http://chat.bomjtrek.site/christyakhur

Your exact location is not shared – just the approximate superficie. The app is free but you can upgrade for Premium benefits including up to 10 ‘Hellos’ and access to the list of people who like you. http://qart.travelpoint.ge/user/ChristoperHamilt/

While Silver Singles is most popular in the States, it is starting to catch on Sopra the UK, too. To register for the site, you must fill out a comprehensive personality test, which takes between 15 and 30 minutes and aims toВ Socio you with your perfect gara. http://roof22.ru/user/WillianWashburn/

Modern matchmaking service eharmony claims over two million peopleВ have found love through their site. Users are required to fill out a short quizВ to determine their core values Per mezzo di relationВ to others, and this powers many useful tools to help them find love (includingВ compatibility scores, personality profiles, and relationship advice). http://rasstrel.ru/bortovoy-zhurnal/amerikanskie-dengi.htm

Grindr is the go-to hookup app for gay men. As one of the leading mainstream dating apps designed exclusively for the LGBTQ+ community, it offers a range of relationship possibilities, but it is a common spot to find a casual hookup. http://mail.aquarius-dir.com/OZ_403051.html

While we work hard to provide accurate and up-to-date information that we think you will find relevant, Forbes Health does not and cannot guarantee that any information provided is complete and makes voto negativo representations or warranties Con connection thereto, nor to the accuracy or applicability thereof. http://dallaswomenmag.xyz/blogs/viewstory/310355

Il Girevole dating ГЁ il dating praticato da i cellulari. Modo avviene sui siti internet nato da incontri, le persone si iscrivono a servizi tramite i quali contattano altri utenti passaggio messaggi SMS. Una variante ГЁ cauto il toothing, praticato ringraziamento alla tecnologia bluetooth. http://classdirectory.homedirectory.biz/details.php?id=258157

It's fast and easy, and if there's one app that even the shyest, most skeptical people will be on, it's Tinder. Sure, you may get carpal traforo from swiping so much, but I guess that also means it's nearly impossible not to find like-minded people who are also DTF. https://serials.monster/user/IngeborgN14/

One main difference between Match and most of the other sites we've listed is that Match sees a way more diverse age range. Sure, there are a ton of young people on match who are probably on Tinder as well, but Incontro also attracts significantly older, more mature (and probably more experienced Sopra bed) users. https://serials.monster/user/JacksonSkipper7/

All communication between Gara users happens on an “anonymous” email network, according to the company. Member name and contact information is kept confidential until a given person chooses to share their information with a potential gara. https://ussurtaigadv.ru:443/nasha-produkciya/kursi/kurs-lecheniya-onkologicheskikh-zabolevanij-kurs-1-detail.html

That's not to say that Grindr isn't also a place to find serious relationships, but that's not what you came here for. Grindr is technically for omosessuale, bi, trans, and queer people, but you'll mostly find cis men on there.В 
Clicca sulla voce Salta; potrai altresì indicare il motivo per cui hai energico che cancellare il tuo account selezionando una delle opzioni il quale verranno mostrate http://americaswomenmagazine.xyz/blogs/viewstory/265870 A proposito di fatti dating Revealed

@eerwq

2 Zulu12  
0
А я вот смог похудеть благодаря методике кефирной диеты! Вот как!
Вот тут описанно про это http://hudeemstoboy.blogspot.ru/ супер кефирная диета.

1 Kamillorn  
0
Очень интересно было прочитать! Спасибо!

Имя *:
Email *:
Код *:
Вход на сайт
Поиск
Календарь
«  Февраль 2013  »
ПнВтСрЧтПтСбВс
    123
45678910
11121314151617
18192021222324
25262728
Архив записей
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz