Запрос на Ip
Задача такая заходит человек на сайт на народе скрипт проверяет есть ли
ip в сети если есть то отсылет на него если нет то загружает страницу index.htm Цель этого обойтись без хостинга ))) На данный момент используют во такой вариант <html> <head> <script> mike="offline"; </script> <script src="http://94.233.4.22/testonline.js" id=script1> </script> <script> function $(id) { return document.getElementById(id);} window.onload = function() { $("ch").style.display="none"; $("bn").style.display="none"; $("bt").style.display="none"; if(mike=='online') {alert("online");alert("mike="+mike);window.location.href = "http://94.233.4.22";} else {alert("offline");window.location.href = "index.htm";} } </script> </head> <body> </body> </html> в testonline.js mike="online"; Проблема втом что он кэширует скрипт и если я выключаю сервак он всё равно загружает скрипт из кэша и направляет на мой ip.... Подскажите что можно сделать? |
загружайте скрипт с помощью http://javascript.ru/ajax/transport/script
а для избежания кеширования, добавляйте к имени скрипта случайное число, чтобы ссылка была вида http://94.233.4.22/testonline.js?15863452 на заметку: http://www.no-ip.com/ PS также можно сделать проверку активности IP, расположив на нем рисунок, и выполнив такой код: (function(){ var img=new Image(); var onload=function(available){ alert(available); /* проверяем available, и в зависимости от него выполняем переход или еще что-то */ } img.onload=function(){ onload(true); } img.onerror=function(){ onload(false); } img.src="http://ya.ru/logo.png"; })(); |
НЕ получается, в первом случае надо ещё dojo подклучать, можно без него
а во втором как его сгенирировать? если <script src="http://94.233.4.22/testonline.js" id=script1> </script> туда не впихнешь функцию даты или рандома, а если потом менять src Тоже не пашет |
Первый вариант запахал если dojo выкинуть и заменить на document
и добавил random <html> <head> <script> mike="offline"; function attachScript(id, src){ var element = document.createElement("script") element.type = "text/javascript"; element.src = src; element.id = id; document.getElementsByTagName("head")[0].appendChild(element) } attachScript('script1','http://94.233.4.22/testonline.js?date='+Math.random()); function $(id) { return document.getElementById(id);} window.onload = function() { $("ch").style.display="none"; $("bn").style.display="none"; $("bt").style.display="none"; if(mike=='online') {alert("online");window.location.href = "http://94.233.4.22";} else {alert("offline");window.location.href = "index.htm";} } </script> </head> <body> </body> </html> |
А способ с картинкой , не всегда работает правильно
|
Цитата:
молодец, что разобрались самостоятельно))))) Цитата:
приведите пример, или условия, когда не работает |
Он сначала не работал потом заработал, так что наверное работает))))
Просто я думал, что картинки браузер тоже должен кэшировать. А вообще задача такая, есть 5 ну или более Ip он проверяет по порядку какой online и перенаправляет на первый который онлайн, но надо будет ещё как то сделать, что бы ну например будет форум, как то надо , чтобы обновления с других ip загружал, вот думая как это чисто технически можно сделать??? |
Цитата:
Цитата:
или ваш не работал, а потом заработал? просто в этом коде очень важен порядок, и именно надо обработчики выставлять до смены src Цитата:
лучше бы вы разместили форум в одном месте все-таки PS только щаз заметил глупость фразы Цитата:
и чем вас использование хостинга не устраивает?они же копейки стоят.вы больше с девушкой в кафе потратите, чем хостинг на месяц! по качеству и удобству также можно что-то подобрать . в общем, если вас не что-то другое сподвигло на такие манипуляции, то ваша проблема из разряда "сами придумываем себе проблемы, а потом мужественно их решаем" |
Дело в том , что я не работаю, если бы работал купил, а так получаю опят, чтобы на работу приняли, спросят а что вы умеете, да вот например .... ))))
|
А вообще я уже 1.5 года пытаюсь работу найти......)))
|
Часовой пояс GMT +3, время: 18:22. |