Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 10.07.2013, 13:15
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Stalin45
req.onreadystatechange = Refresh();
Скобки тут не нужны. Тебе же нужно присвоить саму функцию. А так получается что ты вызваешь функцию и присваиваешь ее результат
Ответить с цитированием
  #22 (permalink)  
Старый 10.07.2013, 13:19
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Stalin45
navigator.appName == "Microsoft Internet Explorer"
Хреновая проверка. Во-первых, XMLHttpRequest нету только в IE6-7, на которые можно забить, а если забить не хочется, то проверять так и нужно:
if (typeof XMLHtppRequest !== 'undefined')
    return new XMLHttpRequest;
else
    return 'какашка';
Ответить с цитированием
  #23 (permalink)  
Старый 10.07.2013, 14:18
Новичок на форуме
Отправить личное сообщение для Stalin45 Посмотреть профиль Найти все сообщения от Stalin45
 
Регистрация: 09.07.2013
Сообщений: 4

danik.js, благодарю! Постепенно хоть проясняться начинает.
Только на основную проблему это все-таки не повлияло...
Тут уже 2 вопроса:
1.
function Refresh()
{
    var a = req.readyState; 
    if( a == 4 )
    {  
        document.getElementById('loading').innerHTML = "Succeed!";
    }
    else
    { 
        document.getElementById('loading').innerHTML = 'Loading.........';
    }
}

Почему функция сразу выдает "Succeed", не ожидая окончания php скрипта? В этом я уверен, поскольку сам скрипт после выдает:

Fatal error: Maximum execution time of 30 seconds

2. Отсюда: все-таки не передает он параметры, либо передает некорректно...в чем я ошибся??
Тут вот где-то ошибка, но не могу понять, в чем:
function changeIP() {
	var ip = document.getElementById('_ip');
	var mask = document.getElementById('_mask');
	var vlan = document.getElementById('_vlan');
	var ipad = document.getElementById('curIP');
    
	req.open('POST', 'telnetChange.php' , true );
    req.onreadystatechange = Refresh;
	req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	var ParamStr = 'ip='+ ip.value +'&mask='+ mask.value +'&vlan='+ vlan.value +'&ipaddress=' +ipad.value;
req.setRequestHeader("Content-Length", ParamStr.length);
	req.send(ParamStr);
}

На всякий случай, вот сам php-скрипт (5 строка):
<?php
include("telnetControlClass.php");
$telnet = new PHPTelnet();
$control1 = new telnetControlClass();
	$control1->conTelnet($telnet, $_POST['ipaddress']);
 	$control1->changeConfigVLAN($telnet, $_POST['ip'], $_POST['mask'], $_POST['vlan']); 
?>

Последний раз редактировалось Stalin45, 10.07.2013 в 14:21.
Ответить с цитированием
  #24 (permalink)  
Старый 10.07.2013, 14:28
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Stalin45
Почему функция сразу выдает "Succeed", не ожидая окончания php скрипта? В этом я уверен, поскольку сам скрипт после выдает:
Сделай console.log(this.readyState, this.status) да посмотри что к чему. И вкладку Сеть изучи.
Ответить с цитированием
  #25 (permalink)  
Старый 10.07.2013, 16:22
Новичок на форуме
Отправить личное сообщение для Stalin45 Посмотреть профиль Найти все сообщения от Stalin45
 
Регистрация: 09.07.2013
Сообщений: 4

danik.js, спасибо, долго дебагал, тут вот такая странность:
Если обойтись без точек останова, то вот такая вот картина...



Статус сразу 4, а ответ сервера - 0.
Если с точкой останова в этом месте и подождать немного времени:



То связь с машиной удастся и у роутера сменится IP, но по прежнему:
Статус сразу 4, а ответ сервера - 0. В чем причина?

И очень важный для меня вопрос, при измененном IP мне теперь необходимо, чтобы страница, на которой скрипт расположен, перезагружалась с 1 другим параметром, а как это сделать??
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Использование функции asXML() bartonom Серверные языки и технологии 6 04.01.2013 22:13
Использование $(this) внутри функции Dorian_bs Общие вопросы Javascript 6 21.11.2011 11:10
Использование магической функции __autoload() romantik2011 Серверные языки и технологии 7 30.07.2011 13:56
использование функции larpug Общие вопросы Javascript 2 30.03.2010 22:30
Использование одной функции для элементов с разными ID Ferroks Общие вопросы Javascript 10 11.09.2009 08:51