Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите с AJAX

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: а точнее с его работой в FireFox
kuzya
Отправлено: 28 Марта, 2007 - 20:11:13
Post Id


Гость


Покинул форум
Сообщений всего: 80
Дата рег-ции: Февр. 2007  


Помог: 0 раз(а)




Вот написал небольшой код (http://kuzya.inattack.ru/test.php) но он отказывается работать под мозиллой. Везде написано как и что нужно для мозилы реализовывать, но ни один пример в ней не работает =((((. Если кто разбирается - посмотрите код плиз, помогите.
P.S. В IE всё робит нормально.
 
 Top
kamikadze
Отправлено: 28 Марта, 2007 - 20:13:41
Post Id



Склонен к самоубийству


Покинул форум
Сообщений всего: 391
Дата рег-ции: Янв. 2007  


Помог: 0 раз(а)




+ под оперой не пашет =))
 
 Top
Viper
Отправлено: 29 Марта, 2007 - 11:39:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




у тебя в коде обработка XMLHTTPRequest задана для ActiveX который поддерживается только IE. для Других браузеров нужно писать обработку преобразования XSLT.
Т.е. для IE будет нечто вида:
var outDoc = new ActiveXObject(getActiveXImpl(ACTIVEX_DOMS));

а этот же код для Mozilla будет выглядеть так:
var outDoc = xsltProcessor.transformToDocument(xmlDoc);

соответственно имена переменных для функций и имена самих функций буду разные.

значение для ACTIVEX_DOMS будет вида var ACTIVEX_DOMS = ["Msxml2.DOMDocument.5.0", "Msxml2.DOMDocument.4.0", "Msxml2.DOMDocument.3.0", "MSXML2.DOMDocument", "MSXML.DOMDocument", "Microsoft.XMLDOM"];
а для Mozilla указывать не нужно.

ЗЫ! Вообще-то неплохо писать на каком "движке" пишеш.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
kuzya
Отправлено: 30 Марта, 2007 - 19:08:52
Post Id


Гость


Покинул форум
Сообщений всего: 80
Дата рег-ции: Февр. 2007  


Помог: 0 раз(а)




Вот код из большинства ресурсов:
function initXMLHTTPRequest(){
var xRequest=null;
if (window.XMLHTTPRequest){
xRequest=new XMLHttpRequest();
} else if(window.ActiveXObject){
xRequest=new ActiveXObject("Microsoft.XMLHTTP")
}

return xRequest;
}

Как понять "на каком движке пишеш"?
 
 Top
Viper
Отправлено: 02 Апреля, 2007 - 11:58:31
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




kuzya пишет:
Вот код из большинства ресурсов: ...

что-то я сильно сомневаюсь чтобы ActiveX работал под движком браузера не поддерживающим его.

kuzya пишет:
Как понять "на каком движке пишеш"?


имеется ввиду prototype или dojo или ... "движков" много.

ЗЫ! Рекомендую http://ru[dot]wikipedia[dot]org/wiki/Ajax


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
kuzya
Отправлено: 02 Апреля, 2007 - 12:58:00
Post Id


Гость


Покинул форум
Сообщений всего: 80
Дата рег-ции: Февр. 2007  


Помог: 0 раз(а)




Неет, Вы о5 не так поняли. Вышепривидённая функция возвращает компонент ActiveX если ActiveX включен(то есть если IE) в обратном же случае - возвращается window.XMLHttpRequest.
 
 Top
kuzya
Отправлено: 02 Апреля, 2007 - 20:03:37
Post Id


Гость


Покинул форум
Сообщений всего: 80
Дата рег-ции: Февр. 2007  


Помог: 0 раз(а)




всё, разобрался. Ошибка была до ужаса банальной =) 3 буквы пропустил =)
 
 Top
kamikadze
Отправлено: 02 Апреля, 2007 - 21:09:37
Post Id



Склонен к самоубийству


Покинул форум
Сообщений всего: 391
Дата рег-ции: Янв. 2007  


Помог: 0 раз(а)




Скажи хоть де запорол код, пусть остальные посмотрят!
 
 Top
Viper
Отправлено: 03 Апреля, 2007 - 08:22:43
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




1. Сказал как сам сделал.
2. Подробнее пожалуйста что исправил Улыбка


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
kuzya
Отправлено: 03 Апреля, 2007 - 12:23:20
Post Id


Гость


Покинул форум
Сообщений всего: 80
Дата рег-ции: Февр. 2007  


Помог: 0 раз(а)




Не пропустил а дописал =)
Короче не знаю почему так призошло но когда написал
xRequest=new XMLHttpRequest;
за место
xRequest=new XMLHttpRequest();
то всё заработало. Грубо говоря вообще случайно получилось правильно написать =)
Хотя в книжке написано со скобками...полтергей какойто =)
 
 Top
UserID
Отправлено: 04 Апреля, 2007 - 16:44:06
Post Id



Магистр JavaScript


Покинул форум
Сообщений всего: 151
Дата рег-ции: Авг. 2006  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1.  
  2. function ajax()
  3. {
  4.         // Connection handler
  5.         var req = null;
  6.        
  7.         // Browser platform
  8.         var browser = null;
  9.        
  10.         // Handler of copy ajax method
  11.         var xmlHttpRequest;
  12.        
  13.  
  14.         this.ajax = function()
  15.         {
  16.                 this.req = (false || true);
  17.                 this.browser = (false || true);
  18.                 this.getBrowser();
  19.                
  20.                 this.aVersion = [
  21.                 "Microsoft.XMLHTTP",  
  22.                 "MSXML2.XMLHttp",
  23.                 "MSXML2.XMLHttp.3.0",
  24.                 "MSXML2.XMLHttp.4.0",
  25.                 "MSXML2.XMLHttp.5.0"];
  26.                
  27.                 if(this.browser == true)
  28.                 {
  29.                         for(var i = 0; i < this.aVersion.length; i++)
  30.                         {
  31.                                 this.xmlHttpRequest = new ActiveXObject(this.aVersion[i]);
  32.                                 if(this.xmlHttpRequest == true) {
  33.                                         break;
  34.                                 }
  35.                         }
  36.                 }
  37.  
  38.                 else {
  39.                                 this.xmlHttpRequest = new XMLHttpRequest();  
  40.                         }
  41.  
  42.                 return this.xmlHttpRequest;
  43.         }
  44.        
  45.         this.getBrowser = function()
  46.         {
  47.                 var browser_name  = navigator.appName.toLowerCase();
  48.                 var browser_check = "microsoft internet explorer";
  49.                
  50.                 if(browser_name == browser_check)
  51.                         this.browser = true;
  52.                 else
  53.                         this.browser = false;
  54.                
  55.                 return this.browser;
  56.         }
  57. //-------------------------------------------
  58.  
  59. //-------------------------------------------
  60.  
  61. }
  62.  


Это кусок из "псевдокласса" на js. У меня работал и на Мозилле, и на Осле, и в Опере. Извиняйте, писал сходу. Так что ошибки не исключены, но это уже мелочи..
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Прочее »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB