Таблица MYSQL:
CREATE TABLE IF NOT EXISTS `sessions` (
`id` int(11) NOT NULL auto_increment,
`id_session` varchar(256) NOT NULL,
`up_date` datetime NOT NULL,
`user` varchar(40) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
counter.php (Подключаем для каждой страницы):
$id_session=session_id();
$ro=mysql_query("SELECT * FROM sessions WHERE id_session ='".$id_session."'");
if($ro) {
if(mysql_num_rows($ro)>0) {
$upd=mysql_query("UPDATE sessions SET up_date=NOW(), user='".$_SESSION['username']."' WHERE id_session ='".$id_session."'");
}
else {
$into=mysql_query("INSERT INTO sessions (id_session, up_date, user) VALUES ('".$id_session."',NOW(),'".$_SESSION['username']."')");
}
}
$del=mysql_query("DELETE FROM sessions WHERE up_date<NOW()-INTERVAL '15' MINUTE");
function CountOnlineUsers($ifguest){
$q=mysql_query("SELECT COUNT(*)FROM sessions WHERE user".$ifguest);
if(mysql_num_rows($q)>0) {
return mysql_result($q,0);
}
}
$lang_stat=array(
'online_all'=>'Онлайн всего: ',
'online_guest'=>'Гостей: ',
'online_user'=>'Пользователей: '
);
online.php (Подключаем там, где надо):
$guests=CountOnlineUsers("=''");
$users=CountOnlineUsers("!=''");
$all=$guests+$users;
echo $lang_stat['online_all'].$all."<br/>";
echo $lang_stat['online_guest'].$guests."<br/>";
echo $lang_stat['online_user'].$users."<br/>";
Чего-то там поменялось)) Можно указать конечное значение. И сообщает о завершении алертом.
<html>
<head>
<style type="text/css">
* {
margin: 10px;
}
body {
color: #505050;
font-size: 22px;
}
input {
border: 1px solid #ccc;
color: #505050;
font-size: 22px;
}
iframe {
border: 10px solid #3e6093;
}
label:hover {
text-decoration: underline;
}
#go {
color: #4fad51;
}
#br {
color: #e03c42;
}
</style>
</head>
<body>
<iframe id="edboframe" width="1100px" border="1" height="400px" src=""></iframe><br/>
<label for="lid">Start with:</label> <input type="text" id="lid" value="1" />
<label for="endid">Stop at:</label> <input type="text" id="endid" value="1" />
<label for="timer">Interval:</label> <input type="text" id="timer" value="3" /><br/>
<input type="button" id="go" value="Start" onclick="StartScript();" />
<input type="button" id="br" value="Stop" onclick="StopScript();" /><br/>
<script type="text/javascript">
function StartScript() {
var ed=document.getElementById('edboframe');
var id=document.getElementById('lid');
var to=document.getElementById('timer');
var end=document.getElementById('endid');
var next=(id.value*1)+1;
if (next<=end.value) {
ed.src='http://10.61.9.15/lists_abiturients/?id='+next+'&action=edboup';
id.value=next;
setTimeout(StartScript,to.value*1000);
}
else {
alert('Successfully completed');
}
}
function StopScript() {
var to=document.getElementById('timer');
to.value=9999;
}
</script>
</body>
</html>
http://saintist.ru/2011/04/21/firefoxstabs-com-zarazhaet-sajty/
При проверке на валидность кода с Doctype: XHTML 1.0 Transitional
<marquee scrollamount='3'>Текст</marquee>
получаем следующую ошибку:
element "marquee" undefined
Решение:
<script type='text/javascript'>
<!--
document.write("<marquee scrollamount='3'>Текст</marquee>");
-->
</script>
Допустим мы имеем хостинг-аккаунт на 1 домен без прав создавать дополнительные домены, но с возможностью создавать определенное количество или неограниченное количество паркованных доменов. Домены паркуются на корневой каталог веб-содержимого, т.е. public_html
и изменить это мы не можем (если бы могли, то можно было бы парковать разные домены на public_html/site1
, public_html/site2
и т.д. и проблема бы решилась сама собой).
Используя mod_rewrite:
В корне (public_html) в файле .htaccess
RewriteEngine on
RewriteCond %{HTTP_HOST} ^site1.*
RewriteRule ^(.*)$ /site1/$1 [L]
RewriteCond %{HTTP_HOST} ^site2.*
RewriteRule ^(.*)$ /site2/$1 [L]
Также в папках site1 и site2 файлы .htaccess с содержимым
RewriteEngine on
Подробнее: Например основной наш домен primary.com
Паркуем домены site1.ru
и site2.ru
В корне сайта primary.com
есть еще папки site1
и site2
с соответствующими сайтами.
Теперь например когда запрашиваемый URL будет содержать site1
будет открываться содержимое папки /site1
, т.е. site1.ru
= primary.com/site1/
СКАЧАТЬ (ZIP, ~2.3КБ)
С помощью этого web-интерфейса редактируется список, на который предполагается включать/отключать инет.
Предпогагается, что у нас есть установленный и настроенный squid, со строчкой в squid.conf:
acl user_list src "/usr/local/etc/squid/users"
для которого потом каким-то образом определяются права доступа к инету.
Файлы будут находиться, например, в /usr/home/public_html/username/squid/
ln -s /usr/home/public_html/username/squid/userlist /usr/local/etc/squid/users
Читать далее…
Использовалась Ip-камера Media Tech MT4009, смотреть которую можно только через Internet Explorer, т.к. ей нужен ActiveX. Умеет делать снимки по движению — 97 кадров, после чего перезаписывает старые файлы, т.е. текущий снимок может иметь какое угодно имя. Файлы сохраняет в папку c:\tmp\webmd
, настроек чтобы изменить путь для сохранения нет. Получилось все так:
1. Расшариваем папку webmd
.
2. На Web-сервере, с которого будем смотреть картинку: предположительно у нас там FreeBSD с установленным apache. Монтируем расшаренную папку. Для монтирования создаем скрипт webmd_up.sh
:
#!/bin/bash
mount_smbfs -W DOMAIN_NAME -I 172.16.5.19 //username@pc_name/webmd/ /usr/home/username/public_html/remote
Для отмонтирования webmd_down.sh
:
#!/bin/bash
umount /usr/home/username/public_html/remote
3. index.php
:
<?php
define('PATH', 'remote/*.');
foreach (glob(PATH.'jpg') as $remote_file)
{
$files_array[$remote_file] = filemtime($remote_file);
}
asort($files_array);
$keys = array_keys($files_array);
$selected_file = array_pop($keys);
echo "<img src='".$selected_file."?nocashe=".time()."' alt='webmd current' title='webmd' />";
?>
?nocashe=".time()."
— нужно для того, чтобы отключить кэширование изображений.
4. На стрничке, где будем смотреть картинку, удобным для вас способом подключаем такой javascript:
function refresh() {
document.all.webmd.src = document.all.webmd.src;
}
window.setInterval("refresh()", 1000);
var html = "<iframe name=\"webmd\" src=\"http://domain_name/~username/\" width=\"640px\" height=\"480px\" frameborder=\"0\" marginheight=\"0\" marginwidth=\"0\" scrolling=\"no\"></iframe>";
document.write(html);