imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 10.12.2009, 23:11     # 1
VasylLive
Newbie
 
Регистрация: 09.03.2009
Сообщения: 8

VasylLive Нуль без палочки
JavaScript:Как проверить наличие cookies и есть ли страничка во фрейме…???

Здравствуйте!

Ситуация такова:

Написал сайт, примерно страниц 300. Все написано вручную (HTML). Главная страница - index.html.
Вот решил создать страничку типа «Вход на сайт» Типа простенькая страничка с Флешь Анимацией и надписью «Вход на сайт». Я понимаю, что можно изменить всю структуру сайта, переписать ссылки и сделать «Вход на сайт» главной страничкой – index.html. Но может можно как-то сделать это, не трогая сам сайт????????

Я тут подумал и решил, что есть три варианта:

Вариант первый:

Если сервер Apache и есть доступ к .htaccess, то создать стартовую страницу start.html, в ней создать ссылку на index.html и в .htaccess прописать:
Код:
 DirectoryIndex start.html
Для сервера IIS выставить в панели управления IIS первой в списке индексов директории корня сайта start.html

Так было бы проще всего, но я этот вариант исключил, так как сейчас временно на бесплатном хостинге Awardspace.com. А на сайтах с каталогами бесплатных хостеров написано, что на Awardspace.com файл .htaccess отключен.

Да и сам я уже столкнулся с этой проблемой еще тогда, когда загрузил баннер (*.gif) в корень сайта, а они меня редиректят на главную страничку хостинга.

Тогда я создал .htaccess с параметрами:
Код:
 <FilesMatch "\.gif">  
allow from all  
</FilesMatch>
И в результате никаких изменений, реакции ноль!

Вариант второй:

Загружать странички во фрейм, что-то типа:

1). Создать две странички, первая «Вход на сайт» типа (start.html) и вторую страничку (index00.html) с кодом загрузки во фрейм типа:

а). HTML:
Код:
 <iframe width="100%" height="100%" src=" start.html "> </iframe>
б). PHP:
Код:
 <?  
$ref=$_SERVER['QUERY_STRING'];  
if ($ref!='') $ref='?'.$ref;  
header('HTTP/1.1 301 Moved Permanently');  
header('Location: start.html '.$ref);  
exit();  
?>
в). Или Javascript:
Код:
 if (top.length==0)  
{ 
    window.location.href='/ start.html '  
 }
2). На главной страничке сайта index.html установить скрипт, который будет проверять, есть ли страница во фрейме или нет. Если нет, то перенаправлять на страничку index00.html, а та будет грузить во фрейм ту самую которую мне нужно start.html типа «Вход на сайт» со ссылкой на главную страничку index.html. Логично, скрипт на index.html срабатывать не будет, так как страничка во фрейме.

Но где взять такой скрипт????? Если у кого есть или кто-то может сам написать, поделитесь, пожалуйста??????????????????????

Вариант третий:

На главной страничке вставляем скрипт, который будет проверять, есть ли cookies, если нет, то добавит cookies и загрузит поверх главной странички index.html другую страничку start.html «Вход на сайт» со ссылкой на главную страничку index.html. Или не обязательно ставить на страничке start.html (Вход на сайт) которую нужно загрузить поверх, ссылку на главную страничку?????? Может можно сделать так, что при клике на изображение или кнопочку страничка, которая поверх главной странички просто буде исчезать (ну типа как реклама на сайтах)????

Пример странички, которую нужно загрузить поверх главной:
Код:
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
</head> 
<body> 
<div align="center"> 
<table width="100%" height="100%" border="0"> 
  <tr> 
    <td width="100%"><div align="center"><img src="*.swf" alt="" width="" height="" /></div></td> 
</tr> 
<--Вход на сайт--> 
  <tr> 
    <td width="100%"><div align="center"><a href="index.html"><img src="*.gif" border="0"/></a></div></td> 
</tr> 
</div> 
</body> 
</html>
Насколько я понимаю то страничку поверх главной странички можно загрузить таким методом:
Код:
 <div style="position:absolute; z-index:2"> 
    index.html 
</div>
Или я ошибаюсь???????????
Может можно все это реализовать с помощью одного скрипта, который будет проверять, есть ли cookies, если нет, то добавит cookies и загрузит поверх главной странички index.html другую страничку start.html (Вход на сайт)????? Если да, то напишите, пожалуйста, пример скрипта или может у кого есть такой скрипт?????????????????

Помогите все это реализовать, очень прошу!!!!

Большое всем спасибо!!!
VasylLive вне форума  
Старый 11.12.2009, 12:35     # 2
EvroStandart
Full Member
 
Аватар для EvroStandart
 
Регистрация: 20.01.2004
Адрес: Таллинн
Пол: Male
Сообщения: 623

EvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собой
Проще всего работать на сервере с сессией.
В php можно проверять переменную сессии и делать инклуд на файлы.
EvroStandart вне форума  
Старый 12.12.2009, 00:22     # 3
BorLase
::VIP::
 
Аватар для BorLase
 
Регистрация: 09.09.2002
Адрес: Kiev
Пол: Male
Сообщения: 1 150

BorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех Гуру
не тратьте силы - возьмите молоток побольше (С)

зачем такие сложности? сделай в том же index.html два div-блока - один по дефолту видимый, с анимацией, второй спрятанный, со стартовым кодом. и переключайся между ними по клику на "Вход на сайт"

дешево и сердито
__________________
Great minds discuss ideas. Average minds discuss events. Small minds discuss people.
BorLase вне форума  
Старый 14.12.2009, 21:02     # 4
VasylLive
Newbie
 
Регистрация: 09.03.2009
Сообщения: 8

VasylLive Нуль без палочки
Большое спасибо BorLase

Это что-то типа вариант три но без куков, да????

Можно пример кода???

Спасибо!
VasylLive вне форума  
Старый 15.12.2009, 12:19     # 5
BorLase
::VIP::
 
Аватар для BorLase
 
Регистрация: 09.09.2002
Адрес: Kiev
Пол: Male
Сообщения: 1 150

BorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех ГуруBorLase Отец (мать) всех Гуру
навскидку так
Код:
<body>

	<div id="flash_div">
		<div style="border: 1px solid red; width: 200px; height: 100px">
			This is flash
		</div>
		<a href="#" onClick="document.getElementById('code_div').style.display='block'; document.getElementById('flash_div').style.display='none';">Enter to site</a>
	</div>

	<div id="code_div" style="display: none">
		<div style="border: 1px solid blue; width: 400px; height: 200px">
			This is 1st page
		</div>
	</div>

</body>
есть только одно "но"... при перезагрузке опять попадаем на флеш - так что без кукисов, боюсь, в любом варианте не обойтись
__________________
Great minds discuss ideas. Average minds discuss events. Small minds discuss people.
BorLase вне форума  
Старый 16.12.2009, 03:01     # 6
VasylLive
Newbie
 
Регистрация: 09.03.2009
Сообщения: 8

VasylLive Нуль без палочки
Брррр.... Я что-то не совсем понимаю. Есть сайт и примерно 300 страничек. Что мне нужно вставить на главной страничке сайта что-бы вывести слой (другую HTML страничку) поверх главной и переключиться на главную то есть основной слой при нажатии на кнопочку "Вход"????

Например, главная страничка:
Код HTML:
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
</head> 
<body> 
<div align="center"> 
 
<--Главная страничка-->
...
... 
  
</div> 
</body> 
</html>
Страничка которую нужно вывести поверх:
Код HTML:
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
</head> 
<body> 
<div align="center"> 
<table width="100%" height="100%" border="0"> 
  <tr> 
    <td width="100%"><div align="center"><img src="*.swf" alt="" width="" height="" /></div></td> 
</tr> 
<--Вход на сайт--> 
  <tr> 
    <td width="100%"><div align="center"><a href="index.html"><img src="*.gif" border="0"/></a></div></td> 
</tr> 
</div> 
</body> 
</html>
То есть как вывести одну HTML страничку поверх другой HTML странички???????

добавлено через 10 минут

Последний раз редактировалось VasylLive; 16.12.2009 в 03:31.
VasylLive вне форума  
Старый 16.12.2009, 12:13     # 7
EvroStandart
Full Member
 
Аватар для EvroStandart
 
Регистрация: 20.01.2004
Адрес: Таллинн
Пол: Male
Сообщения: 623

EvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собой
Я бы всётаки на php делал.

Если ты собираешся закрывать под пароль все 300 страниц, тогда придётся этот код со слоями в каждую страницу прописывать.
А если чтото новое придумаешь, будешь в каждой странице прописывать изменения.

И вообще, всё что работает на стороне клиента - это не защита. Такие формы входа легко обходятся.

Элементарная защита: поставить все страницы в папку с закрытым доступом и подгружать их из одного пхп файла с проверкой сессии.
EvroStandart вне форума  


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

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

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


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




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