Информация

Обсуждало 3 человека

Определение загрузки страницы

Логика и программирование
22 июня 2011 в 21:01:33

Уважаемые господа мега-программеры, такой вопрос: забивается во флэш-прогу адрес (например, http://xyu.com/text.php), и нужно определить, существует ли такой адрес. Возможно ли это сделать, желательно средствами AS2?

Обсуждение (вниз)

Не хватает только вашего мнения. Зарегистрируйтесь, чтобы написать!

26 июня 2011 в 21:16:29

А вот еще такой нюанс.. Есть такие сайты, которые даже при несуществующих разделах прога определяет их как существующие. Вот например: http://www.inattack.ru/fuck/ , директории такой нет, но ответ от сайта-то есть.. Возможно ли как-то решить эту проблему?

23 июня 2011 в 01:04:43

GothX, ок, главное, что все работает :).

edapskov, возьму на заметку ;)... Но так вроде скопировал сейчас последнее свое, вроде нормально работает (Flash CS5.5).

23 июня 2011 в 01:01:09

нет, я не копировал, я прочитал, понял и переписал сам) просто затупил конкретно)

23 июня 2011 в 00:58:14

Dracyla, просто при копировании кода со страницы сайта компилятор ругается. Но если код (не изменяя) отформатировать ручками - компилится отлично :-)

23 июня 2011 в 00:55:04

Аа, все, эврика)) Все, спасибо большое. Не буду больше по ночам заморачиваться)

23 июня 2011 в 00:53:22

Версия флэша какая?

23 июня 2011 в 00:49:59

ааа.. Охренеть я перегрелся, я нихрена не соображаю уже.. Можешь исходник кинуть, пожалуйста?

23 июня 2011 в 00:40:22

а, ну да... я тоже туплю...

var arr:Array = [ 'http://site1.ru', 'http://site2.ru' ]; var cur:Number = 0; var last:Number = arr.length - 1; var ldr:LoadVars = new LoadVars(); ldr.onLoad = function(success:Boolean):Void { if (success == true) { trace('сайт есть'); } else { trace('сайта нет'); } cur++; if (cur <= last) { ldr.load(arr[cur]); } else { trace('готово'); } } ldr.load(arr[cur]);

23 июня 2011 в 00:39:53

Вот, если кому не влом посмотреть: http://gothx.narod.ru/Saves/Untitled-1.rar )

23 июня 2011 в 00:35:07

Ну это я сам так же перенес, но у меня такой вариант отказывается работать.. Вобще аномальные вещи творятся)

23 июня 2011 в 00:26:03

Тут все просто... нужно грузит дальше после того, как предыдущий сайт обработан:

stop(); for (i=0; i<=a.length; i++) { ldr = a[i]; var ldr:LoadVars = new LoadVars(); ldr.onLoad = function(success:Boolean):Void { if (success == true) { b = b+newline+a[i]+' - есть'; } else { b = b+newline+a[i]+' - нет'; } ldr.load(a[i]); //вот сюда я ее перенес... }; }


на заметку:
var arr:Array = [1, 2, 3, 4, 5]; //более правильное и удобное, мне кажется объявление массива //------------------------ b += a[i] + ' - есть '; //так мне кажется тоже удобнее будет, - это код переноса строки

23 июня 2011 в 00:24:32

"Может я тебя не так понял. но мне и надо, чтобы каждый адрес проверялся ведь)"

Pencil совершенно справедливо заметил, что не стоит все страницы грузить в один момент времени...

23 июня 2011 в 00:07:20

b - это просто конечный вывод инфы, в котором будет написано. какие адреса есть, а каких нет.
у тебы каждый адрес из массива будет пытаться загрузиться.

Может я тебя не так понял. но мне и надо, чтобы каждый адрес проверялся ведь)

23 июня 2011 в 00:01:17

ну во первых на кой у тебя b непонятно, оно не меняется в зависимости от условия...
а во вторых загрузка ldr.load(a[i]); стоит внутри цикла и не зависит от проверки... у тебы каждый адрес из массива будет пытаться загрузиться.

22 июня 2011 в 23:53:20

блин.. Все равно запара.. Смотри, вот в первом кадре задаю массив:
a=new Array("http://fundux.ru", "http://abc.ru");

нажимаем на кнопочку "Проверить", переходим на 2 кадр, а на нем вот что:
stop(); for (i=0; i<=a.length; i++) { ldr = a[i]; var ldr:LoadVars = new LoadVars(); ldr.onLoad = function(success:Boolean):Void { if (success == true) { b = b+newline+a[i]+' - есть'; } else { b = b+newline+a[i]+' - нет'; } }; ldr.load(a[i]); }

И как-то программа странно начинает работать ))

22 июня 2011 в 23:47:49

=)

22 июня 2011 в 23:16:58

О, а я и не знал, что в EXE запроса нет. Спасибо большое, выручил вобще)

22 июня 2011 в 23:14:02

есть четрые способа:
- запускать во флэше XD;
- собрать EXE (в проигрывателе флэшки: файл -> создать проект);
- открыть доступ к папкам (http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html);
- запускать с сайта (не просто с локальной .html страницы, а с какого-то сайта, например fundux.ru).

22 июня 2011 в 23:02:02

Мне только интересно, можно ли сделать так, чтобы этот гре6аный плеер не запрашивал разрешение)

22 июня 2011 в 22:58:10

А, все, разобрался. Торможу люто вобще)

22 июня 2011 в 22:54:28

Ну вот смотри, как сделать чтобы в этой строчке:
ldr.load('http://my-site.ru');
вместо конкретного сайта была переменная? Я пробовал, но почему-то не получается. Мозги может уже просто не работают ночью, но мучался-мучался, никак не выходит

22 июня 2011 в 22:51:49

у меня только скуп

22 июня 2011 в 22:47:54

В точку ))

22 июня 2011 в 22:43:07

Похоже }{отабь|4 опять какую то пакость задумал хдд

22 июня 2011 в 21:45:44

слушай, стукни мне в аську, надо кое-что прояснить)

22 июня 2011 в 21:41:13

не за что ;)

22 июня 2011 в 21:36:21

Спасибо большое, дружище

22 июня 2011 в 21:16:46

можно так:

var ldr:LoadVars = new LoadVars(); ldr.onLoad = function(success:Boolean):Void { if (success == true) { trace('сайт есть'); } else { trace('сайта нет'); } } ldr.load('http://my-site.ru');
Fundux.ru v.3.0 © 2006-2021 AleXNoD
Портал русских флеш игр и flash мультов