Еженедельная Электронная Рассылка.
ПОЛЕЗНЫЕ СОВЕТЫ 
ВЕБ-ДИЗАЙНЕРУ.

Выпуск #13.

Здравствуйте уважаемые подписчики. Если кто еще не верит в несчастливое число 13, может воспользоваться моим примером. Когда я создавал очередной выпуск #13 (а это было месяца три назад) мой компьютер постигла печальная участь. Много материала было утерено, но кое-что удалось восстановить, и поэтому я опублекую ответы на вопросы, опубликованные в №12. Заранее приношу свои извинения за ЗНАЧИТЕЛЬНУЮ задержку. И хочу поблагодарить всех, кто откликнулся на просьбы наших читателей.

GRACH grach@polarcom.ru спрашивал:

Подскажите скрипт - пароль на страничку.

Ответ от Andrey kazoo@mailru.com
Смотря где вы хоститесь. Если на платном, или "приличном сервере", то это можно сделать средствами HTTPD Apache. (файл .htaccess). На большинстве бесплатных такая возможность отсутствует.
Ответот Аскар Мингазетдинов MingazetdinovAA@bsu.bashedu.ru
Советую попробывать программу Applet Password Wizard, она вроде есть здесь - WWW.SILICONJOY.COM
Ответ от dimka zipa@newmail.ru
заходи и качай applet там много чего хорошего есть :))) http://jsru.agava.ruтам все есть :))
Ответ от kubah@mail.ru
Сайт Best JavaScript ( http://bestjs.boom.ru), раздел "Лучшее" страница 4 или 8. С вас сообщение в гостевой книге!
Ответ от Alexsandr Dovzhenko domed@bsh.mk.ua
Вот скрипт, который вы просили.Пароль на страничку (пока можно использовать только один пароль) Поместите в любое место тегов <head></head> или <body></body>::
<!--Passworder 1.3 SCRIPT -->
<script language="JavaScript">// script written by Deto Freeman
// find more Java Scripts @ www.js.hotmail.ru
 pass = prompt('Enter Password, please:');
 if (pass=='!!!0!!!') { alert('!!!1!!!') } else { alert('!!!2!!!'), top.location.href="!!!3!!!" }
 </script>
<!-- Passworder 1.3 SCRIPT END -->

Измените следующие части:
Вместо !!!0!!! напишите единственно доступный пароль
Вместо !!!1!!! напишите текст сообщения о верном пароле
Вместо !!!2!!! напишите текст сообщения об отказе в доступе
Вместо !!!3!!! напишите адрес страницы с отказом в доступе

Anatoli Nosovmultire@mail.ru спрашивал:
1. Существуют программы, которые скачивают весь сайт целиком, чтобы потом пользователь мог просмотреть сайт в офф-лайне. На моём сайте есть страница, но ссылок на эту страницу нет и пользователь не знает о её существовании. Если пользователь будет скачивать весь сайт целиком, то он скачает и эту страницу?
2. Как сделать так, чтобы страницы моего сайта не копировались. На одном сайте я видел такую штуку. При попытке скопировать всю страницу или при попытке мышкой выделить текст, а потом скопировать - выскакивало окно о том, что все права защищены и не надо тут копировать. Вы случайно не знаете как это делаетеся?
Ответ от WebMaster webmaster@oriflame.com.ru
1. - Ага :)
2. - Это делается очень легко, но все равно это можно преодолеть если открывать браузером HTML код через меню, а не правой кнопкой!   Пример:  
<script language="JavaScript">
<!--
function click() {
if (event.button==2) {
alert('А зачем это Вам? :)')
}
}
document.onmousedown=click
// -->
</script>
Вот и Все :)
Ответ от TheImperia a_l_e_x1@yahoo.com
Mojno zapretit mishke najimat na pravuyu knopku. Vot script (vstavit mejdu <head> i </head>) :
<script LANGUAGE="JavaScript">
<!-- Provided by TheImperia -->
<!-- TheImperia@yahoo.com-->
<!-- http://www.oocities.org/theimperia -->
function right(e) {
if (navigator.appName == 'Netscape' &&
(e.which == 3 || e.which == 2))
return false;
else if (navigator.appName == 'Microsoft Internet
Explorer' &&
(event.button == 2 || event.button == 3)) {
alert("Text kotoriy napisat na MessageBox");
return false;
}
return true;
}
document.onmousedown=right;
if (document.layers)
window.captureEvents(Event.MOUSEDOWN);
window.onmousedown=right;
</script>

S etim skriptom est odna problema: on ne rabotayet v Netscape. Yesli ya naidu dlya Netscape, to ya napishu ego.
Ответ от ARTRO@themail.com
Я знаю как запретить пользователю работать правой кнопкой мыши.
Если тебе именно это нужно, то вот этот скрипт.
Как говорится: " Удачного применения!" :)
<script language="JavaScript">
<!--
var message="NO! NO! NO! (c)2000 !";
function click(e) {
if (document.all) {
if (event.button == 2) { alert(message);
return false;
}
}
if (document.layers) {
if (e.which == 3) {
alert(message);
return false;
}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
}
document.onmousedown=click;
// -->
</script>
Ответ от lama lama@emts.ru
Скачать с сайта можно все что угодно если оно там лежит.  Существуют программы которые позволяют задав УРЛ ресурса просмотреть  все что там находиться, причем им абсолютно безразлично наличие  ссылок. Посетитель даже может скачать просто одну эту страничку и  уйти.  Поэтому ответ на второй вопрос просто отпадает. Ибо что нельзя сделать в лоб завсегда обоити можно.
Ответ от Andrew chekin@himky.comcor.ru
1. Нет пользователь скачивая сайт будет скачивать только залинкованные странички, поэтому странички на которые нет ссылки останутся нетронутыми.
2. Есть скрипт который отключает правую кнопку мыши и при попытке нажать на неё у юзера вылетает окошко с вашей надписью типа того что "все права защищены и не надо тут копировать". Код скрипта:

<Script Language="JavaScript">
var message="Текст, который появится при нажатии\nправой клавиши
пользователем";
function click(e) {if (document.all)
{if (event.button == 2)
{alert(message);return false;}}
if (document.layers) {if (e.which == 3)
{alert(message);return false;}}}
if (document.layers)
{document.captureEvents(Event.MouseDown);}
document.onmousedown=click;
</Script>

Ответ от Evgeny V. Pautov pautov@sbor.ru
1. Существуют программы, которые скачивают весь сайт целиком, чтобы потом пользователь мог просмотреть сайт в офф-лайне. На моём сайте есть страница, но ссылок на эту страницу нет и пользователь не знает о её существовании. Если пользователь будет скачивать весь сайт целиком, то он скачает и эту страницу?
Ответ от ИПК работников ТВ и РВ rtv@cityline.ru
1. Зависит от скачивальщика. Например у WebCopier  есть настройки, позволяющие скачивать файлы по ссылкам, или все файлы из папки.
2. Каков адес сайта? Подскажи, нужно разобраться.
Жду ответа
Ответ от Елисеев Юрий law@tender.kharkov.com
Я не помню на счет запрета от копирования мышкой но способ защиты от нежелательного мирроринга твоего сайта можно подсмотреть на http://www.webclub.ru/
Ответ от Vladimir vovl@chat.ru
Существуют программа, TEleport Pro, В зависимости от настроек позволяет скачивать от сылки до сайта со всеми нисходящими папками. Я сам пробовал , довольно неплохая программа
Ответ от Аскар Мингазетдинов MingazetdinovAA@bsu.bashedu.ru
Посылаю ответ на второй вопрос Анатолия Носова
<script language="JavaScript1.2">
if (document.all) document.body.onmousedown=new Function("if
(event.button==2||event.button==3)alert('Извините,но на этой странице вы не
можете использовать правую кнопку мыши!')")
</script>
Ответ от dimka zipa@newmail.ru
http://jsru.agava.ru там все об этом есть:))
Michael Maziammazia@inbox.ru спрашивал:
Не могли бы вы подсказать мне, можно ли сделать так, чтобы при нажатии на ссылку открывалось окно, причем в нем не было бы никаких панелей инструментов. Я знаю как сделать так, чтобы такое окно появлялось сразу после загрузки страницы, а вот можно ли сделать все выше описанное - незнаю. Если можно, то не могли бы вы подсказать мне, как это лучше сделать.
Ответ от WebMaster webmaster@oriflame.com.ru
Приветствую Вас!
Это сделать очень просто, достаточно вставить кое что в код странички, где находится ссылка! Пример:
<script language=JavaScript>
<!--
function OpenWindow() {  window.open('ВАША ССЫЛКА,КОТОРАЯ БУДЕТ ОТКРЫВАТЬСЯ В НОВОМ ОКНЕ','pollwindow','toolbar=no,scrollbars=no,directories=no, status=no,menubar=no,resizable=no,width=700,height=400')
}
// -->
</script>

<a href='ВАША ССЫЛКА, КОТОРАЯ БУДЕТ ОТКРЫВАТЬСЯ В НОВОМ ОКНЕ' OnClick='OpenWindow()' target='pollwindow'><font size='2'>ССЫЛКА</font></a>

width - размер по горизонтали (в пихелях)
height - размер по вертикале (в пихелях)
Ответ от Kashkin, Mikhail MKashkin@marykay.ru
PopUp Window
<script language="javascript">
<!-- //
function popWin( url, name, width, height, scroller ) {
var outStr = 'height=' + height +',width=' + width;
if (scroller != 'true') {
outStr = outStr + ',menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=no,
resizable=no';
}
else {
outStr = outStr + ',menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars,
resizable=no';
}
window.open(url, name, outStr);
}
// -->
</script>

Example for PopUp Window
<a href="javascript:popWin( 'page_in_window.html', 'GoodName', 400,
500,  'false' );">Open window</a>
Ответ от А.М.Томилов atom999@mail.ru
Подобные ссылки организованны у меня в одной работе вот URL 
http://viuyn.null.ru , а вобще скачай FAQ по яве скрипту с цитфорума.
Ява скрипт там прямо в ссылку вставлен, выдери прямо со страницы.
Использована функция window open параметров не помню, но они как раз
позволяют решить эту задачу. Если по этому URL страница будет не доступна
загляни на наш сайт http://null.ru/zzz/emperor там в каталоге работ есть другой
адрес на эту же работу: Школа Кулачного и Рукопашного Боя "Сибирский Вьюн"
Ответ от Wizard trunaev@lermus.ru
1.Копировать эту часть в HEAD

<script language="JavaScript">
function doView (target, file)  {   
 var w=window.open(file,target,
'isRaised=yes,toolbar=no,scrollbars=no,resizable=yes,alwaysRaised=yes,
width=520,height=600'
 );
 w.focus();
return false;
}
</script>

2. Эта часть вставляется в BODY
<p><a href="mypage.htm" onclick="doView('doView','mypage.htm'); return false;">ссылка</a></p>

toolbar=no/yes - отключает или влючает панель инструментов.
scrollbar=no/yes - отключает или включает полосу прокрутки.
resizable=yes/no - включает или выключает возможность изменения размера.
width= -ширина окна.
heigth= высота окна.
mypage.htm - страница, на которую делается ссылка. Причем, это может быть
даже просто графический файл. (*.gif, *.jpg, и т.д.)
Недостаток скрипта: Одновременно может быть открыто только одно окно
с ссылкой.
Ответ от ARTRO@themail.com
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=windows-1251">
<title>Opening a document in the individual window</title>
</head>
<body bgcolor="#000000" text="#00FF00" >
<div align="center">
<table border="1"  cellpadding="0" width="500" height="300">
<tr>
<td>
<h1>
<p align="center"><b><font face="Courier New, Courier, mono" size="5">Размер окна задается скриптом.</font></b>
</h1>
<form>
<div align="center"><center>
<table width="100%" border="0" bgcolor="#CCCCCC">
<tr>
<td><center><input TYPE="button" VALUE="ОТКРОЙ ОКНО!" ONCLICK="NewWindow()"></center></td>
</tr>
</table>     
</center></div>
</form>
<script language="JavaScript"><!--
function NewWindow(){window.open("P.HTM","","height=320,width=530,status=no,
location=no, toolbar=no,directories=no,menubar=no");}
// --></script>
</table>
</div>
</body>
</html>
Ответ от TheImperia a_l_e_x1@yahoo.com
Izvinyaus za napisaniye angliyskimi bukvami, no tak
budet bistree.

Itak, shtobi eto sdelat, nujno vstavit eto mejdu
</head> i <body>, ili srazu posle <body>:

<script language="javascript">
<!-- Provided by TheImperia ( theimperia@yahoo.com ) -->
<!-- http://www.oocities.org/theimperia -->
function wnd_op(addr, ttl){
window.open(addr, ttl, "menubar, toolbar, location,
personalbar, status, resizable, scrollbars, width=450,
height=200, top=0, left=0");
}
</script>

Potom, vstavit eto:

<a href="" onclick="wnd_op('link', 'title');">click
here</a>

Obratite vnimaniye na href="". mejdu kovichkami net
nichego tak kak mi hotim otkrit okno, no stranitsa iz
kotoroy mi eto delayem ostayetsya taje.
Teper obyasneniye:
MENUBAR= esli eto ne napisat, to ne budet menubara (tam gde File, Edit, View,
... commandi)
TOOLBAR= esli eto ubrat, to ne budet knopok (Back, Forward, Stop, ...)
LOCATION= esli ubrat, to ne budet stroki dlya adresa.
PERSONALBAR= ya ne znayu shto eto.
STATUS= esli ubrat, to stroka vnizu IE uberetsya (ta stroka na kotoroy napisano
kakaya stranitsa vkluchaetsya)
RESIZABLE= esli eto ubrat, to nelzya budet menyat razmer otkritogo okna.
SCROLLBARS= eto scrollbars, te s kotorimi stranitsu
dvigat vlevo-vparavo i vverh-vniz.
WIDTH= Dlinna okna kotoroye otkroyetsya.
HEIGHT= Visota okna kotoroye otkroyetsya.
TOP= na kakom rasstoyanii ot verha otkrit okno.
LEFT= na kakom rasstoyanii ot leva otkrit okno.
-------------------------------------------------------
Teper kak vkluchit:
onclick="wnd_op('link', 'title');"
LINK= Adres stranitsi kotoruyu otkrit v tom okne.
TITLE= Nazvaniye na tom okne.
Ответ от kubah@mail.ru
Вставьте у себя следующий код (между тегами <BODY> и </BODY>):
<script language="JavaScript"><!--
function openwindow(){
if (navigator.appVersion.substring(0,1)>=3)
{window.open('page.htm','window_name','width=630,height=423,toolbar=0,location=0, directories=0,status=0,menubar=0,scrollbars=1,resizable=0');}
}
// --></script>
И ссылку:
<a href="javascript:openwindow()">Open window</a>
Ответ от lama lama@emts.ru
В теге A надо прописать реакцию на клик
<a hfer="......." onclick=openwindow()>....</a>
Ну и естественно надо написать функцию открытия окна.
function openwindow()
{
window.open('URL','Name','Propeties');
}
И так вставлять столько сколько нужно.
Ответ от Andrew chekin@himky.comcor.ru
Вот код в котором нужно вставить только свою ссылку и текст для неё.
<blockquote>
<i>
<a href="#1" onClick="window.open('http://адрес_странички_или_картинки',
'newWin', 'Toolbar=0, Location=0, Directories=0, Status=0, Menubar=0,
Scrollbar=0, Resizable=0, Copyhistory=1, Width=640, Height=480')">
<p>
Текст вашей ссылки
</a>
</i>
</blockquote>
Некоторые параметры, которые можно изменять. Значение "ноль" - выключено,
значение "единица" - включено:
Toolbar - Панель инструментов
Location - Поле адреса странички
Directories - Панель ссылок
Status - Статусная строка
Menubar - Навигационное меню
Scrollbar - Полоса прокрутки
Resizable - Способность изменять размеры окна
Ответ от GRACH grach@polarcom.ru
<blockquote><i>
<a href="your_page.htm" onClick="window.open('startpage.htm', 'newWin', 'Toolbar=1, Location=0,
Directories=0, Status=1, Menubar=1, Scrollbar=0, Resizable=0, Copyhistory=1, Width=640,
Height=480')"><H2> Вперед!!!</H2></a></i> </blockquote>
Значит объясняю:
Toolbar - Панель инструментов
Location - Поле адреса странички
Directories - Панель ссылок
Status - Статусная строка
Menubar - Навигационное меню
Scrollbar - Полоса прокрутки
Resizable - Способность изменять размеры окна
0 и 1 менять как угодно. 1 - это включить функцию, а 0 - соответствено выключить функцию.
Ответ от Илья ilya-ipk@mail.ru
Значит вставляешь такую феню:
после тега body
function
show(fname){open(fname,'','width=700,height=450,scrollbars=yes,location=yes,toolbar=no,
menubar=no,status=yes')}
Где ссылка
<a href="javascript:void(0);" onclick="show('111111111')">222222222</a>
Или Если ссылок немного, то
<a href="javascript:void(0);"
onclick="open('1111111','','width=700,height=450,scrollbars=yes,location=yes,toolbar=no,
menubar=no,status=yes')">2222222</a>
Пояснения
1111111 - имя файла, который нужно открыть в новом окне
2222222 -  тескт ссылки
width=100   ширина в пикселях
height=100 высота в пикселях
scrollbars=yes|no нужны ли полосы прокрутки
toolbar=yes|no нужны ли кнопки
menubar=yes|no нужно ли меню
status=yes|no нужен ли статус
apfoxapfox@mail.ru спрашивал:
У меня страница о разнообразных спонсорах и я хотел бы сделать рейтинг  спонсоров. Заходит посетитель на сайт, выбирает спонсора из списка и голосует, а затем спонсоры или графически, или расположением на странице меняются местами.
Ответот Andrey kazoo@mailru.com
За 30 000 показов я вам сделаю это. (показы - RLE.ru)
Ответ от kubah@mail.ru
Тебе нужен CGI друг!
Ответ от lama lama@emts.ru
Если нет возможности выполнения своих серверных приложений (по просту говоря сценариев ЦГИ) можно забыть об рейтинге. Если есть таковая то ставь скрипт и он все обсчитает.
Ответ от Webmaster Mary Kay (russia) Webmaster@marykay.ru
поскольку все данные о кликах на спонсоров все равно будут храниться  в файлах, то советую использовать perl-скрипт. Возмжно в пределах данной рассылки это и покажется неуместным, но я только первый раз получил письмо и знаю только такое решение. оно, кстати, очень хорошо работает и проверенно, о минусах вы и сами  наверное знаете %)
Ответот Andrew chekin@himky.comcor.ru
Для этого существуют множество CGI скриптов которые можно найти практически в любой CGI коллекции, и если твой сервер поддерживает CGI то сделать рейтинг будет нетрудно.
Ответ от ИПК работников ТВ и РВ rtv@cityline.ru
Чтоб это сделать, нужен сервер с поддержкой Perl А тебе нужно изучить CGI и Perl. Кстати, это очень интересно и не сложно (особенно, если ты раньше занимался программировнаием)

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

Вопросы:

Dmitriy A. Lebedev dlebedev@mailru.com спрашивает:
При создании сайта я столкнулся с небольшой проблемой, которую не никак не могу решить, и поэтому прошу Вашей помощи!.. Дело в том, что на всех вебстраницах сайта я хочу разместить полоску меню (высота - 1 см, длина - 15 см, выравнивание - вправо по верхнему краю) с использованием карт-изображений на стороне клиента. Для разметки рисунков на отдельные "части" я обычно пользуюсь программами GeoHTML и MS FP 2000. При размещении строки меню в середине экрана или снизу особых проблем не возникает, однако когда я пытаюсь разместить ту строку сверху (в ячейке таблицы 100*100%), с добавлением каждого нового "района" строка меню почему-то сдвигается вниз - при использовании 5 районов в браузере MSIE 5.0 она оказывается аж посередине экрана - а сверху остается пустое место! Так в чем же дело? Может быть, я что-то делаю неправильно...       
mailto:mashkov@aport.ru?subject=Otvet For Dmitriy

ОТВЕТИТЬ

Anatoli Nosov multire@mail.ru спрашивает:
Здравствуйте. У меня к Вам два вопроса. 1. Что лучше cgi скрипты или java скрипты?
2. Не видели ли Вы где-нибудь такого скрипта, который бы, после ввода пароля и логина, контролировал на какие ссылки на этой странице нажал вошедший пользователь. А потом бы отправлял эту информацию на e-mail ? Просто очень нужен такой скрипт, но нигде нет такого.  
mailto:mashkov@aport.ru?subject=Otvet For Anatoli

ОТВЕТИТЬ

Снегирь alnaus@mail.ru спрашивает:
У меня вопрос по поводу счётчиков посещений. Как сделать такой HitCounter, чтобы он все посещения хранил в log-файле и, допустим, раз в месяц присылал мне по почте свой отчёт - кто и какими тропами бродил по моей странице? Также можно ли, чтобы этот счётчик подсичитывал сколько пользователей уже скачало какой-то файл с моего сайта (например mp3, txt и т.д.)?
mailto:mashkov@aport.ru?subject=Otvet For Snegiry

ОТВЕТИТЬ

Беделов Камбар nukusqk@online.ru спрашивает:
Я видел как многие сайты используют фиксированные области слева и вверху страницы (точного термина незнаю), так вот информация менялась в остальной части экрана, а часть слева и вверху страницы оставалась постоянной в течении нескольких страниц. Просьба описать как это сделать.
mailto:mashkov@aport.ru?subject=Otvet For Kambar

ОТВЕТИТЬ

Сергей kiitos@nvartovsk.wsnet.ru спрашивает:
Как сделать так чтобы с моего сайта посетители имели возможность скачивать ZIP-файлы?
mailto:flawww@usa.com?subject=Otvet
mailto:mashkov@aport.ru?subject=Otvet For Sergey

ОТВЕТИТЬ

Sergej Sokolenko sokolenkos@mail.ru спрашивает:
Тут занимаюсь страничкой, появился вопросец. Видел на других страничках. Вместо того, чтобы давать фиксированную ссылку на какой-нибудь файл, делается хитрый запрос в поисковую систему, например, Lycos, прямо со своей странички, а она (поисковая система) как правило находит нужный файл, даже если он "переехал". А еще было бы лучше дать все же фиксированную ссылку, а если там уже ничего нет, то запустить Lycos с запросом требуемого файла. Это возможно? Как реализовать?
mailto:mashkov@aport.ru?subject=OtvetForSergejSokolenko

ОТВЕТИТЬ

Шлите ваши вопросы по адресу: mailto:mashkov@aport.ru?subject=Vopros

Эдмон.
admont@pomorsu.ru


[ назад ] [ далее ]