Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2007, 11:55   #1
fufel
Пользователь
 
Регистрация: 19.09.2007
Сообщений: 19
По умолчанию передача переменных между страницами

очень простой вопрос.
как органезовать переменные между странисами на javescrit ?

Пример. когда я посетил одит url то javascript в кудато записал некую переменную.
потом про посещении второго url мне javascript выдал даную переменую настраницу.

а ну и javascript умеет работать с ini-файлами?
fufel вне форума Ответить с цитированием
Старый 22.10.2007, 12:25   #2
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Все два вопроса можно организовать через cookie.
Поставьте на страничку следующий код:
Код HTML:
[LEFT]<script language=”JavaScript” type=”text/javascript”>
  function getCookieVal (offset)  {
 var endstr = document.cookie.indexOf (";", offset);
 if (endstr == -1) endstr = document.cookie.length;
 return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) {
 
 var arg = name + "=";
 var alen = arg.length;
 var clen = document.cookie.length;
 var i = 0;
 while (i< clen) {
  var j = i + alen;
  if (document.cookie.substring(i, j) == arg) return getCookieVal (j);
  i = document.cookie.indexOf(" ", i) + 1;if (i == 0) break;
  }
 return null;
}
function SetCookie (name, value) {
 var argv = SetCookie.arguments;
 var argc = SetCookie.arguments.length;
 var expires = (2< argc) ? argv[2] : null;
 var path = (3< argc) ? argv[3] : null;
 var domain = (4< argc) ? argv[4] : null;
 var secure = (5< argc) ? argv[5] : false;
 document.cookie = name + "=" + escape (value) + ((expires == null) ? "" : (";expires=" + expires.toGMTString())) + ((path == null) ? "" : (";path=" + path)) + ((domain == null) ? "" : (";domain=" + domain)) + ((secure == true) ? ";secure" : "");
}
function CookieMain() {
 var expdate = new Date();
 var visits;
 if ( navigator.appName == "Microsoft Internet Explorer" ) {document.write(".");}
 else { expdate.setTime(expdate.getTime() + (24 * 60 * 60 * 1000 * 365));
  if(!(visits = GetCookie("visits"))) visits = 0;
  visits++;
  SetCookie("visits", visits, expdate, null, null, false);
  document.write("");
 if(visits == 1) document.write("в первый раз");
 if(visits == 2) document.write("во второй раз");
 if(visits == 3) document.write("в третий раз");
 if(visits == 4) document.write("в четвeртый раз");
 if(visits>4) document.write("в " + visits + "-ой(ый) раз.");
  }
}
   // -->
</script>[/LEFT]
Этот код наглядно демонстрирует пример записи/чтения кукисов. Если вы зайдете на страничку, в которую внедрен этот код, то вы увидите надпись, в который раз вы на нее заходите.
Алгоритм прост:
1. Вы зашли на страницу.
2. Читаем значение, где должно быть сохранено то количество посещений, например как "visitcount".
3. Если его нету пишем в нашу переменную iVisit - 1. Если оно есть - читаем его в переменную например iVisit.
4. Добавляем к переменной iVisit единицу.
5. Записываем переменную iVisit в куки, например как "visitcount".
SkyM@n вне форума Ответить с цитированием
Старый 22.10.2007, 12:47   #3
fufel
Пользователь
 
Регистрация: 19.09.2007
Сообщений: 19
По умолчанию

про кукисы я знаю.
но вот исчо сохранилась надежна о том что может через файлы можна чтото сделать. через ini-файл напремер.
а то в переменных настройки исчо хочу хранить.

Нучитесь писать по-русски или используйте украинский //модератор

Последний раз редактировалось SkyM@n; 22.10.2007 в 13:37.
fufel вне форума Ответить с цитированием
Старый 22.10.2007, 13:39   #4
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

А зачем вам использовать ини файлы? Это же кроссбраузерное решение. Как юзеры будут работать не на виндовых операционках? Имхо, извращение.
Юзать-то можно, через WSH или VBScript, но зачем чесать левой пяткой правое ухо?
SkyM@n вне форума Ответить с цитированием
Старый 22.10.2007, 14:26   #5
fufel
Пользователь
 
Регистрация: 19.09.2007
Сообщений: 19
По умолчанию

мне необходима для моего личного проэкта, и тока для себя.
тогда есть исчо варентации через что сохранять переменые в javascript. vba неподходит.

Последний раз редактировалось SkyM@n; 22.10.2007 в 14:39. Причина: флейм
fufel вне форума Ответить с цитированием
Старый 22.10.2007, 14:41   #6
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Нуу, VBA я вам не предлагаю, а VBScript (если для себя только) - самое то, что нужно. Позвольте поинтересоваться, почему он вам не подходит?

Комментарии, адресованные модератору, давайте пожалуйста ему или администратору непосредственно в личку.
SkyM@n вне форума Ответить с цитированием
Старый 22.10.2007, 15:05   #7
fufel
Пользователь
 
Регистрация: 19.09.2007
Сообщений: 19
По умолчанию

поскок я всё написал на javascrit. и тогда будет затруднительно переносить с VBScript на javascript переменные.
хотя если найдётся премер как через VBScript работать с ini файлами буду очень презнателен.

да и кстати, VBScript умеет работать с DOM ?
fufel вне форума Ответить с цитированием
Старый 22.10.2007, 15:21   #8
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Безусловно вам надо заюзать жабаскрипт. VBScript не умеет работать с DOM.
А почему вам кукисы не подойдут? Много ли вам информации надо будет сохранять? JavaScript, а именно Windows Script Host вам точно поможет.
Он умеет работать с файлами, следовательно, научить кодом понимания синтаксиса ini - несложно.
SkyM@n вне форума Ответить с цитированием
Старый 22.10.2007, 16:20   #9
fufel
Пользователь
 
Регистрация: 19.09.2007
Сообщений: 19
По умолчанию

кукесы неподайдут поскок у меня есть пораметры которые раз в месяц в ручную менять надо.

Тогда с другова конса. напремер я на Delphi написал Get4toto.exe и вызвать её из javascript. и получить результат Get4toto.exe
чтото вродеь этого:
set a = StartCmd('Get4toto.exe peram1 param2');
fufel вне форума Ответить с цитированием
Старый 22.10.2007, 16:35   #10
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

1)Дык можно и программно менять, и вручную.
2)Можно. Вся работа с ОС Виндоуз - Windows Script Host.
SkyM@n вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача данных между страницами IQ-40 Безопасность, Шифрование 0 28.01.2008 11:32
Замена переменных NoName_emaNoN Win Api 4 18.01.2008 09:05
Ошибка в переменных Maugli-rus Общие вопросы Delphi 2 24.12.2007 07:44
передача данных между процедурами Неясыть Общие вопросы Delphi 15 18.11.2007 12:54
Передача данных между окнами/приложениями? Dexer Win Api 11 23.05.2007 16:23