Научите хоть чему-нить
Вот к примеру: вводят в поле логин, а внизу отображается, занят он или нет. Запросы к БД я сам сделаю, какой JS и XML нужен скажите...
1. Стас - 16 Мая, 2007 - 19:22:29 - перейти к сообщению
2. UserID - 16 Мая, 2007 - 23:31:55 - перейти к сообщению
XML здесь совсем не нужен.
Вот что я намутил:
Вот что я намутил:
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- // Ajax class api
- function mycms_ajax()
- {
- var AJAX_METHOD = null;
- var AJAX_SCRIPT = null;
- var AJAX_HANDLE = false;
- // First initialization
- this.ajax = function(method, script)
- {
- // Check for browser platform
- if(window.ActiveXObject)
- {
- for(var i = 0; i < AJAX_OBJECT.length; i++)
- {
- try {
- // If Internet Explorer
- AJAX_HANDLE = new ActiveXObject( AJAX_OBJECT[i] );
- } catch(e) {}
- }
- }
- else if(window.XMLHttpRequest)
- {
- // If Mozilla, Opera, Safari
- AJAX_HANDLE = new XMLHttpRequest();
- }
- // If ajax installed, return hash
- if(AJAX_HANDLE) {
- AJAX_METHOD : method,
- AJAX_SCRIPT : script,
- AJAX_HANDLE : AJAX_HANDLE
- };
- } else {
- alert("MyCMS System : No ajax installed. Too old browser.");
- }
- }
- AJAX_HANDLE = this.ajax;
- this.callback = function(data)
- {
- if(AJAX_HANDLE)
- {
- {
- AJAX_HANDLE.open("POST", AJAX_SCRIPT, true);
- AJAX_HANDLE.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
- AJAX_HANDLE.onreadystatechange = this.mycms_informer;
- AJAX_HANDLE.send(data);
- }
- }
- {
- AJAX_HANDLE.open("GET", AJAX_SCRIPT, true);
- AJAX_HANDLE.onreadystatechange = this.mycms_informer;
- AJAX_HANDLE.send(null);
- }
- }
- }
- }
- this.mycms_informer = function()
- {
- if (AJAX_HANDLE.readyState == 4)
- if (AJAX_HANDLE.status == 200)
- alert("Server is done!");
- else if (AJAX_HANDLE.status == 404)
- alert("Request URL does not exist");
- else
- alert("Error: status code is " + AJAX_HANDLE.status);
- }
- }
Это эдакий псевдокласс интерфейса Ajax. Работает через POST и GET, единственное, что для русского языка нужно ещё строить массив соответствия кириллицы значениям из rfc. Что-то вроде этого:
Затем, к примеру обработаем нажатие кнопки:
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- function goaja()
- {
- var ajax = new mycms_ajax();
- ajax.ajax("POST", "./path.php");
- ajax.callback("test=" + document.all["test"].value);
- delete ajax;
- return false;
- }