По результатам проверки предыдущий скрипт вполне сносно зарекомедовал себя в плане надёжности и кроссбраузерности, исправно работая даже в ie. В плане веса он тоже занимает не много , вставлять его относительно легко...
Единственное что несколько мешает. Ибо с ним, например, не получится , если что , переключить кодировку. Или же, скажем, посмотреть свойства картинки.
В общем штука достаточно топорная, но вполне имеющая право на существование.
Мной была сделана (и испытана) простенькая модификация данного скрипта, которая позволяет с какой-либо служебной странички отключать для вас оный скрипт. Так как отключение происходит через сессии, то отключение действует только пока вы не азкрыли сайт 15 минут.
Выглядит оно вот так.
Подключение скрипта модернизируется с учётом необходимости проверки сессий (имейте в виду session_start(); должно быть, желательно, в самом начале документа).
session_start();
if (!isset($_SESSION['copy']) || ($_SESSION['copy'] == false)) {
echo '
<script language=JavaScript>
<!--
var message="Правый клик запрещен!";
///////////////////////////////////
function clickIE4(){
if (event.button==2){
alert(message);
return false;
}
}
function clickNS4(e){
if (document.layers||document.getElementById&&!document.all){
if (e.which==2||e.which==3){
alert(message);
return false;
}
}
}
if (document.layers){
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById){
document.onmousedown=clickIE4;
}
document.oncontextmenu=new Function("alert(message);return false")
// -->
</script>
<script type="text/javascript" src="http://ufresh.ucoz.net/Nodelete/files01/copyprotect.js"></script>
';
}
А вот код отдельной странички с управлением (
в нашем случае это вот эта).
session_start();
if (isset($_GET['copy'])) {
if ($_GET['copy']=='no' ) {
$_SESSION['copy'] = false;
echo '
<p>Возможность копирования отключена.</p>
';
}
else {
$_SESSION['copy'] = true;
echo '
<p>Возможность копирования включена.</p>
';
};
}
if (!isset($_SESSION['copy']) || ($_SESSION['copy'] == false))
{
echo '
<a href='.$_SERVER['PHP_SELF'].'?copy=yes>Включить возможность копирования.</a>';
}
elseif ($_SESSION['copy'] == true)
{
echo '
<a href='.$_SERVER['PHP_SELF'].'?copy=no>Отключить возможность копирования.</a>';
}
И всё. Проверить действие оного скрипта вы можете всё по той же ссылке. Как только администрация поделится со мной тем скриптом защиты от копирования, что тут стоял раньше - напишу и про него.