imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 22.06.2004, 18:41     # 1
Viroman
Guest
 
Сообщения: n/a

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

Здравствуйте многоуважаемые знатоки своего дела
Смысл в том, что первым делом у меня открывается страница с регламентом условий, если пользователь согласен, то в куки заносится определённое значение и пользователь сопровождается сразу на нужную страницу, не согласен, заносится в куки и пользователь идёт гулять на цельный месяц, так сказать даю срок передумать
Но теперь смысл в том, что соглашение будет появляться раз в месяц, и это уже настроено.
А теперь я так подумал, если пользователь занесёт страницу в фавориты, на которую пользователь был проведён, то соглашаться ежемесячно ему не придётся, а мне надо. Значит мне надо как то передавать какой нибудь мелкий параметр в открываемую страницу, тоесть открываемая страница не динамическая, иначе это было бы сделать легче.
Вопрос как из обычной страницы в обычную страницу передавать яваскрипт параметр?
PS: можно конечно и на второй странице сделать проверку куки, но не хочется раздувать код этой страницы тем же скриптом.

Последний раз редактировалось Viroman; 22.06.2004 в 18:50.
 
Старый 22.06.2004, 18:53     # 2
D1g174LM4n14c
Guest
 
Сообщения: n/a

Насчет передавать параметр с помощью яваскрипта, есть несколько вариантов. Можно через куки, а можно через URL. То есть, перенаправлять юзера по URL page.html?query_string, где query_string - строка, которую легко можно получить яваскриптом через document.location.search.

А по поводу всей системы, которую ты описал - это вообще бред какой-то... Защиты - ноль.
 
Старый 22.06.2004, 19:02     # 3
Viroman
Guest
 
Сообщения: n/a

Мне не нужна защита, мне нужно согласен или нет. Неужели не ясно?
Если выключен яваскрипт, то страница вообще не будет отображаться.

Цитата:
URL page.html?query_string, где query_string
Этот метод недоделаный какой то, что помешает мне занести его в фавориты?
А насчёт куки я уже сказал, что не хочется раздувать этим скриптом вторую страницу.
PS: страница находится на бесплатном хостинге не поддерживающем навороты ввиде cgi скриптов
 
Старый 22.06.2004, 19:18     # 4
D1g174LM4n14c
Guest
 
Сообщения: n/a

Теперь я понял что тебе нужно.
Но это не получиться
 
Старый 22.06.2004, 19:44     # 5
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
Цитата:
Если выключен яваскрипт ...
Ты вопрос задал "Kак из обычной страницы в обычную страницу передавать яваскрипт параметр" ...
RaZEr вне форума  
Старый 22.06.2004, 19:56     # 6
Viroman
Guest
 
Сообщения: n/a

Razer, ты неправильно понял. Это я на вопрос "защиты" сказал, что чтобы отображалась страница, надо чтобы не был выключен javascript.
Просто у меня по окончании загрузки страницы ставится visibility show, а иначе всегда hidden стоит, поэтому говорю, что если у кого яваскрипты будут отключены, страница не будет отображаться, вот и всё.
Так что мой вопрос всё ещё остаётся открытым, ты не знаешь как это воплотить?
Я на все 100% уверен, что что то подобное видел по типу оpener

Последний раз редактировалось Viroman; 22.06.2004 в 20:01.
 
Старый 22.06.2004, 20:06     # 7
Saruman
::VIP::
 
Аватар для Saruman
 
Регистрация: 12.11.2002
Адрес: Nicosia, Cyprus
Сообщения: 1 285

Saruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman ГуруSaruman Гуру
Viroman
Или куки, или GET-запрос. Т.к. GET-запрос тебя не устраивает - его можно в фавориты пихнуть, то остаются только куки. И "раздувание второй страницы" будет составлять всего несколько строчек на проверку этой куки.
__________________
"If people only knew how hard I work to gain my mastery, it wouldn't seem so wonderful at all." Michelangelo Buonarroti
Saruman вне форума  
Старый 22.06.2004, 20:15     # 8
D1g174LM4n14c
Guest
 
Сообщения: n/a

Невозможно перенаправить пользователя на страницу, а потом его на нее не пускать, если не использовать серверных скриптов. В любом случае имя страницы одно и то-же, а яваскриптом страницы не защищают!

И даже если использовать "какой-то параметр" - его все равно не удастся скрыть от пользователя. Захочет - увидит...

Saruman
Куки помогут создать только лишь "защиту от дурака".

"Случайное" значение яваскриптом еще можно создать (например, Math.random() или самому генерить исходя, скажем, из текущего времени).

НО!

Как проверить на второй странице, что идентификатор валидный? То-то-же... Так что если нужен случайный идентификатор, он в любом случае должен зависить от какой-то величины, которая останется неизменной между страницами.

А дальше... я уже лучше буду молчать... все равно, даже если много скажу - ничего не измениться
 
Старый 22.06.2004, 20:28     # 9
Viroman
Guest
 
Сообщения: n/a

Цитата:
Невозможно перенаправить пользователя на страницу, а потом его на нее не пускать, если не использовать серверных скриптов.
Никогда не говори никогда. Это возможно, только если ты не знаешь как, это ещё не значит, что этого не сделать.

Цитата:
В любом случае имя страницы одно и то-же, а яваскриптом страницы не защищают!
Запомни одну пословицу: каждый веник мечтает стать пальмой
Мне не нужно суперской защиты, если я скачаю страницу, достаточно самостоятельно подправить значение, и смотри наздоровье. Это не защита в твоём понимании, да и в моём тоже. На бесплатном хосте особенно не развернёшься. Да мне и защиты не надо, просто регламент, согласен или нет, честное слово, как маленький ребёнок придираешься.
Не знаешь ответа, не надо лишнии нюни раскидывать, что можно, а что нельзя, это и так всем известно.
 
Старый 22.06.2004, 20:41     # 10
D1g174LM4n14c
Guest
 
Сообщения: n/a

Я тебе уже сказал все варианты. Или ты думаешь что их бесконечное множество? Я же не смогу тебе генерировать их столько, сколько ты будешь сам придираться что "это некрасиво", а то "раздувает страницу". Просто подтверждение - значит просто подтверждение. Куки как удачный вариант если не отключены и Get-метод - как альтернатива.
 
Старый 22.06.2004, 20:46     # 11
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
Est eshe wariant. Sozdat neskolko freimow. Odin newidimij. W nem pinat nekotruju JS peremennuju i obraschatsya k nei iz stranic podgrujaemih w widimom freime.
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 22.06.2004, 20:49     # 12
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
Хелл, так ему надо чтобы при повторном заходе если юзер согласился, то зашел без проблем, а если нет - увидел соглашение. Но куки использовать религия не позволяет.
RaZEr вне форума  
Старый 22.06.2004, 21:12     # 13
D1g174LM4n14c
Guest
 
Сообщения: n/a

Если делать с фреймами, то можно реализовать идею так:

Два фрейма. Один невидимый, другой - со страницей.
В невидимом фрейме просто определяется переменная, скажем, isAccepted с начальным значением 0. На странице с соглашением кнопка "Согласен" при нажатии на которую isAccepted становится == 1 и загружается след. страница, на которой проверяется переменная isAccepted на равенство единице.

RaZEr
А вот кукисы ставятся теперь только на первой странице с соглашением, а потом при повторном заходе проверяются там же и при необходимости происходит переадресация.
 
Старый 23.06.2004, 01:40     # 14
Viroman
Guest
 
Сообщения: n/a

Я ухохатываюсь
Народ, пришлось через куки делать, оказалось это даже куда более идеальней, когда конечный пользователь не будет сослан каждый раз к регламенту, если он уже согласился. Короче пожертвовал килобайтик пользовательских нервов, ободрал всё ненужное и запихал во вторую страницу.
Всем спасибо, было поучительно.
 
Старый 23.06.2004, 22:12     # 15
Viroman
Guest
 
Сообщения: n/a

Народ возникла ещё одна проблема
Значит поставил я скрипт, всё путём. Но блин если использовать редирект, а он ещё и лочит название сайта, то запись/чтение куки не срабатывает. Главное на опере открываешь через редирект, всё нормально, но на интернет експлорере глючит, тоесть что не нажми, по одному месту, не сохраняется ничего, а когда заходишь без редиректа напрямую через интернет експлорер, всё нормально. Вывод один, вот из за этого залоченного имени страницы, интернет експлорер как то дуреет из за него, да и мало того, интернет експлорер выдал весьма странную ошибку и самозакрылся
Короче ошибка в памяти, в общем хрен знает что творится.

Народ вопрос, как сделать переход от одного сайта к другому через яваскрипт со свойством равнозначному нажатию обычного линка с target=top_ ?

Сейчас стоит window.location.href, но с ним залочка остаётся.
А как в неё забить свойство target=top_ никто не в курсе, чтобы автоматом всё происходило. Если такой возможности нет, то хотя бы кто нибудь в курсе, как через яваскрипт производить нажатие реального линка автоматоматически <a href*** ?

В общем ваша помощь нужна народ.
PS: редирект уж как терять не хочется, весь линк из шести букв, да ещё рекламу с глаз долой убрал на халяву такое просто так не оставляют.

Добавлено:
Проблема решена, просто скрипт махонький поставил.
function breakout_of_frame()
{ if (top.location != location) { top.location.href = document.location.href ; } }

Последний раз редактировалось Viroman; 23.06.2004 в 22:35.
 
Старый 02.07.2004, 12:13     # 16
Viroman
Guest
 
Сообщения: n/a

Ребята я настырный, говорил же что есть решение, но оно постоянно ускользало. Так может быть для кого нибудь когда нибудь это решение окажется полезным.

Значит страница первая, которая будет вызывать вторую страницу должна выглядеть так.

Код:
start.htm
<HTML>
<HEAD>
</HEAD>
<FRAMESET border=0 frameSpacing=0 rows=*,1 frameBorder=NO>
<FRAME name=indexname src="index.htm" noResize>
</FRAMESET>
</HTML>
Вторая же страница должна иметь следующее содержание.

Код:
index.htm
<html><head>
</head><body>
<script type="text/javascript">
<!--
 document.write("Ты попал сюда со страницы: " + document.referrer);
//-->
</script>
</body></html>
Конечно это будет работать только будучи находясь на сервере, с локалки ничего не показывает. Но в общем в таком виде через referrer можно спокойно определять, с какой страницы попал человек сюда и проводить дальнейшие действия.
И ещё один удачный момент, у пользователя сохраняется в фаворитах конечно же referrer, а не вызванная страница.
Может кому то пригодятся эти познания, потому делюсь с вами.
Спасибо за внимание.

Последний раз редактировалось Viroman; 02.07.2004 в 12:29.
 
Старый 03.07.2004, 01:27     # 17
Viroman
Guest
 
Сообщения: n/a

Народ извиняюсь, если покажется, что я захламляю форум, но нашлось более изящное решение редиректа с рефералом на яваскрипте, всем редиректам редирект потому что рефер то сохраняется, все остальные способы(в том числе и метатаг) кроме вышеуказанного с фреймом не сохраняют реферал, а фрейм очень некрасивое решение на мой взгляд.
Надеюсь когда нибудь кому нибудь пригодятся мои познания

Первая страница

Код:
start.htm
<HTML><HEAD>
</HEAD>
<DIV id=nevidim style="visibility: hidden;">
<a id="ssilka1" href="index.htm" TARGET="_top">dummy</a><br>
<a id="ssilka2" href="index.htm" TARGET="_blank">dummy2</a><br>
</div>
<script type="text/javascript">
<!--
document.all.ssilka2.click()
document.all.ssilka1.click()
//-->
</script>
</HTML>
Вторая страница
Код:
index.htm
<html><head>
</head><body>
<script type="text/javascript">
<!--
var prosto = document.referrer
document.write("Вы пришли с " + prosto);
document.write("<br>Ваша страница является " + document.location);
//-->
</script>
</body></html>
Открываются также более широкие возможности как TARGET="_top" или
TARGET="_blank" указывая их в ссылке, в общем лепота.

Последний раз редактировалось Viroman; 03.07.2004 в 01:44.
 


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

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

Быстрый переход


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




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.