Здравствуйте.
По мотивам учебника данного сайта написал скрипт.
Насколько оно корректно так поступать? Может упустил или не понял что-нибудь?
Страница формируется PHP следующим образом:
на страницу добавляются <form > с надписью из БД (это работает уже) каждой форме присваивается id (<form id=5>) из БД (обычное целое положительное `id` int(5) unsigned NOT NULL AUTO_INCREMENT)
когда мы нажимаем кнопку, то вызывается JS и передает id на сервер
если короче, то нажали кнопку №1, на сервер отправили ?p=1 сервер ответил "ок".
Взгляните опытным взглядом.
var articles = [];
var answer = 'ok';
function run(obj)
{
if ( answer == GetData(SendData(XMLHttpRequest(),obj)) ) articles.push(obj.id);
}
function XMLHttpRequest()
{
var XHR = ("onload" in new XMLHttpRequest()) ? XMLHttpRequest : XDomainRequest;
var xhr = new XHR();
xhr.timeout = 5000;
xhr.ontimeout = function() { alert( 'Извините, сервер не доступен ... Попробуйте еще раз.' ); return null;}
return xhr;
}
function SendData(xhr,obj)
{
if (!xhr) return null;
var request = 'index.php?p='+obj.id;
xhr.open('GET',request,true);
xhr.send();
return xhr;
}
function GetData(xhr)
{
if (!xhr) return null;
xhr.onreadystatechange = function()
{
if (xhr.readyState == 4) return xhr.responseText;
if (xhr.status != 200)
{
alert('Неправильный ответ сервера. '+xhr.status + ': ' + xhr.statusText);
return null;
}
}
}