Архив

Архив раздела ‘Web’
19 октября 2011 Нет комментариев

Таблица 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/>";
Categories: PHP, Web Tags: ,
6 сентября 2011 Нет комментариев

Чего-то там поменялось)) Можно указать конечное значение. И сообщает о завершении алертом.

<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>&nbsp;<input type="text" id="lid" value="1" />&nbsp;
<label for="endid">Stop at:</label>&nbsp;<input type="text" id="endid" value="1" />&nbsp;
<label for="timer">Interval:</label>&nbsp;<input type="text" id="timer" value="3" /><br/>
<input type="button" id="go" value="Start" onclick="StartScript();" />&nbsp;
<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>
Categories: Javascript, Web Tags:

http://saintist.ru/2011/04/21/firefoxstabs-com-zarazhaet-sajty/

Categories: Web Tags:
15 октября 2010 1 комментарий

При проверке на валидность кода с Doctype: XHTML 1.0 Transitional

<marquee scrollamount='3'>Текст</marquee>

получаем следующую ошибку:
element "marquee" undefined
Решение:

<script type='text/javascript'>
  <!--
   document.write("<marquee scrollamount='3'>Текст</marquee>");
   -->
</script>
Categories: Web Tags: ,

Допустим мы имеем хостинг-аккаунт на 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/

Categories: Web Tags:
21 апреля 2010 Нет комментариев

СКАЧАТЬ (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
Читать далее…

Categories: Unix, Web Tags: ,
17 апреля 2010 1 комментарий

Использовалась 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);
Categories: Unix, Web Tags: , ,