Forum Webscript.Ru

Программирование => PHP => Тема начата: Guard от 09 Августа 2002, 11:10:50

Название: Как узнать, кто на сайте? И .....
Отправлено: Guard от 09 Августа 2002, 11:10:50
Как узнать кто в настоящий момент на сайте.

И еще одно: можно ли того, кто сечас на сайте вызвать в форум или чат.

На сайте есть персональные страницы пользователей (зарегестрированных). Как бы сделать так, чтобы во-пкрвых было видно есть ли они сейчас на сайте, а во-вторых вызвать в чат. Пример Я хочу вызвать пользователя Unnamed, находящегося сейчас на сайте. Нажимаю на его ник, появляется его личная страница. В этой странице кнопка: вызвать в чат. - Жму - У него на экране появляется окно: вас вызывает в чат пользователь такой-то. Он жмет ОК! и попадаем мы вместе в чат!!!!!
Название: Как узнать, кто на сайте? И .....
Отправлено: я... от 09 Августа 2002, 11:47:38
Guard ,
поверх каждой страницы помести такой код:

session_start();
session_set_cookie_params("0");
$sid=session_id(); $time=time(); $past=time()-500;
$link=mysql_connect("хост_базы","логин_базы","пароль_базы");
mysql_select_db("название_базы");
mysql_query("DELETE FROM online WHERE last_time < \'$past\'");
$result=mysql_query("SELECT last_time FROM online WHERE sess_id=\'$sid\'");
$rows=mysql_num_rows($result);
if ($rows!="0") {
mysql_query("UPDATE online SET last_time=\'$time\' WHERE sess_id=\'$sid\'");
} else {
mysql_query("INSERT INTO online (last_time, sess_id, ip) VALUES (\'$time\', \'$sid\', \'$REMOTE_ADDR\',\'$PHP_SELF\')");
}
mysql_query("OPTIMIZE TABLE online");
mysql_close($link);
?>
 

Дамп таблицы online:

CREATE TABLE hunt_online (
  hid int(11) NOT NULL auto_increment,
  sess_id varchar(255) NOT NULL default \'\',
  last_time varchar(255) NOT NULL default \'\',
  ip varchar(12) NOT NULL default \'0\',
  page varchar(255) NOT NULL default \'\',
  PRIMARY KEY  (hid)
) TYPE=MyISAM;
 
а с вызовом....сам подумай... есть идейка сделать на каждой странице вызов определенной ф-ции, которая при обращении к ней будет проверять поступал ли вызов в чат...
или же обновляемый фрейм...но это глупость...имхо...
вот...
Название: Как узнать, кто на сайте? И .....
Отправлено: Tankist от 09 Августа 2002, 12:51:34
Guard
Воспльзуйся кодом, что Я... добавил, а потом уже легко будет приладить, кто в онлайн по именам
Название: Как узнать, кто на сайте? И .....
Отправлено: Guard от 09 Августа 2002, 13:09:15
я... Сэнкс! Щас буду пробовать.