Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.06.2010, 15:02
jollyD вне форума Посмотреть профиль Отправить личное сообщение для jollyD Найти все сообщения от jollyD
  № 1  
Ответить с цитированием
jollyD

Регистрация: Jun 2010
Сообщений: 11
Tools Проблема - не вызывается функция

Не работает код, скорее всего я не вызываю функцию внутри.. немогу найти что не так

Код AS1/AS2:
var ghostvar = 10;
playGhost = function () {
	//
 
	var php_processG:LoadVars = new LoadVars();
	var post_variableG:LoadVars = new LoadVars();
	post_variableG.string = 1;
	post_variableG.sendAndLoad("ghs.php", php_processG, "POST");
	php_processG.onLoad = function(success:Boolean) {
		if (success) {
			ghostvar = php_processG.result;
		} else {
			ghostvar = "0";
		}
	};
	if (ghostvar != 0) {
		tellTarget (_root.ghosts) {
			gotoAndPlay(php_processG.result);
		}
	} else {
	}
	//
clearInterval(pauseGhost);
};
pauseGhost = setInterval(playGhost, 1000);
playGhost();

Старый 16.06.2010, 15:11
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 2  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
2 jollyD:
А ошибки какие-то выдаёт?
Лучше замените
Код AS1/AS2:
tellTarget (_root.ghosts) {
	gotoAndPlay(php_processG.result);
}
на
Код AS1/AS2:
_root.ghosts.gotoAndPlay(php_processG.result);
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

Старый 16.06.2010, 15:16
jollyD вне форума Посмотреть профиль Отправить личное сообщение для jollyD Найти все сообщения от jollyD
  № 3  
Ответить с цитированием
jollyD

Регистрация: Jun 2010
Сообщений: 11
Заменил, нет кликаю - пишет всё ок. Тестирую - ничего не показывает... Ума не приложу почему не пашет

Старый 16.06.2010, 15:22
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 4  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
Цитата:
Сообщение от jollyD Посмотреть сообщение
нет кликаю - пишет всё ок. Тестирую - ничего не показывает... Ума не приложу почему не пашет
Ничего не понял. Где кликаете?
Так если ничего не показывает, не обязательно, что в коде ошибка. Может оно-то и "пашет", просто не так, как вам хотелось бы. То есть, с точки зрения кода всё может быть ОК, а вот с точки зрения логики или каких-то других сторонних факторов...
Поставьте в разных местах trace'ы, посмотрите, какие строки кода исполняются, какие значения у разных свойств и переменных.
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

Старый 16.06.2010, 15:32
jollyD вне форума Посмотреть профиль Отправить личное сообщение для jollyD Найти все сообщения от jollyD
  № 5  
Ответить с цитированием
jollyD

Регистрация: Jun 2010
Сообщений: 11
Поставил трейс
Код AS1/AS2:
trace(ghostvar)
в
Код AS1/AS2:
if succes
и в
Код AS1/AS2:
ghostvar != 0
В одном - значение 10, в другом undefinied


Почему-то не видит
Код AS1/AS2:
php_processG.result


Последний раз редактировалось jollyD; 16.06.2010 в 15:39.
Старый 16.06.2010, 16:33
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 6  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
2 jollyD:
Проверьте, возвращает ли ghs.php текстовую строчку вроде:
Цитата:
result=...
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

Старый 16.06.2010, 16:43
jollyD вне форума Посмотреть профиль Отправить личное сообщение для jollyD Найти все сообщения от jollyD
  № 7  
Ответить с цитированием
jollyD

Регистрация: Jun 2010
Сообщений: 11
в самом php прописано
PHP код:
echo"result=$calc"
переменная
PHP код:
$calc 
существует...

Старый 16.06.2010, 16:50
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 8  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
2 jollyD:
А, погодите, так у вас неверно написано всё...
Этот код:
Код AS1/AS2:
	if (ghostvar != 0) {
		tellTarget (_root.ghosts) {
			gotoAndPlay(php_processG.result);
		}
	} else {
	}
нужно вставить в обработчик onLoad после
Код AS1/AS2:
ghostvar = php_processG.result;
А то у вас выходит, что вы только начали загружать результат работы скрипта, а уже обращаетесь к ghostvar.
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

Старый 16.06.2010, 17:03
jollyD вне форума Посмотреть профиль Отправить личное сообщение для jollyD Найти все сообщения от jollyD
  № 9  
Ответить с цитированием
jollyD

Регистрация: Jun 2010
Сообщений: 11
Вы имеете в виду так:?
Код AS1/AS2:
var ghostvar = 10;
playGhost = function () {
	//
	var php_processG:LoadVars = new LoadVars();
	var post_variableG:LoadVars = new LoadVars();
	post_variableG.string = 1;
	post_variableG.sendAndLoad("ghs.php", php_processG, "POST");
	php_processG.onLoad = function(success:Boolean) {
		if (success) {
			ghostvar = php_processG.result;
			if (ghostvar != 0) {
		_root.ghosts.gotoAndPlay(php_processG.result);
		trace(ghostvar);
	} else {
	}
			trace(ghostvar);
		} else {
			ghostvar = "0";
		}
	};
 
	//
	clearInterval(pauseGhost);
};
pauseGhost = setInterval(playGhost, 5000);
playGhost();
Работает, теперь проблема что оно обновляется только при перезагрузке в браузере...
Задумывалось, чтоб этот код циклически обращался к php скрипту, брал переменные и подставлял их.. Можно как-то обойтись без перезагрузки? К тому же ручной!


Последний раз редактировалось jollyD; 16.06.2010 в 17:07.
Старый 16.06.2010, 17:49
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 10  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
2 jollyD:
Так вы же сами убиваете свой таймер в playGhost:
Код AS1/AS2:
clearInterval(pauseGhost);
Вот и выполняется оно всего 1 раз.
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

Создать новую тему Ответ Часовой пояс GMT +4, время: 23:28.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 23:28.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.