на главной странице форума античата список тех, кто онлайн. нужен скрипт такой, чтобы был вывод на html странице. И нужен граббер RSS с ачата. как тут http://godlab.ru/faq/
куда это все ты собрался вставлять? т.е. скрипт...для форума или cms или просто гипертестовых страниц? все это есть. уточни
эээ..типо список юзеров? Всё это безобразие делается примерно так: Создаёшь с БД таблицу например `sessions` примерно с таким содержанием: Code: CREATE TABLE `sessions` ( `session` varchar(32) NOT NULL, `date` datetime NOT NULL, `username` varchar(100) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251; Далее в главном файле делаем примерно следующее: PHP: <?php session_start(); $session = session_id(); $_SESSION['username'] = !empty($_COOKIE['name']) ? $_COOKIE['name'] : ''; //Имя юзера (для примера берём с куки) $interval = 15; //интервал бездействия юзера в мин #Экранируем имя юзера (но лучше сделать функцию получше =))) $u_name = !get_magic_quotes_gpc() ? mysql_real_escape_string($_SESSION['username']) : $_SESSION['username']; $sql = mysql_query("SELECT * FROM `sessions` WHERE `session` = '".$session."'"); if($sql && mysql_num_rows($sql) > 0){ #Если сессия уже существует то обновляем время mysql_query("UPDATE `sessions` SET `date` = NOW(), `username` = '".$u_name."' WHERE `session`='".$session."'"); }else{ #Если не существует то заносим mysql_query("INSERT INTO `sessions` VALUES('".$session."', NOW(),'".$u_name."')"); } #Удаляем старые сесии mysql_query("DELETE FROM `sessions` WHERE `date` < NOW() - INTERVAL '".$interval."' MINUTE"); ?> Далее делаем функцию которая получает кол-во гостей и пользователей: PHP: function online(){ $sql = mysql_query("SELECT COUNT(*) FROM `sessions` WHERE `username` != '' UNION SELECT COUNT(*) FROM `sessions` WHERE `username` = ''"); $users = mysql_result($sql, 0); $guests = mysql_result($sql, 1); $vsego = $users + $guests; return array( 'vsego' => intval($all), 'users' => intval($users), 'guests' => intval($guests]) ); } Соответственно фукция возвращает массив. Выводится так: PHP: <?php $online = online(); echo 'Сейчас на сайте '.$online['vsego'].' пользователей ('.$online['users'].' гостей и '.$online['guests'].' гостей)'; ?> А ники юзеров выводятся просто циклом, типо того: PHP: $sql = mysql_query("SELECT * FROM `sessions` WHERE `username` != ''"); if($sql && mysql_num_rows($sql) > 0){ while($nick = mysql_fetch_array($sql)){ echo htmlspecialchars($nick['username']).'<br/>'; } } Короче в таком духе))
Слава богу обьяснил в аське что за скрипт нужен)) проверил. вроде работает. PHP: <?php function send(){ $send = "GET /index.php? HTTP/1.1\r\n"; $send .= "Host: forum.antichat.ru\r\n"; $send .= "User-Agent: Mozilla/5.0\r\n"; $send .= "Pragma: no-cache\r\n"; $send .= "Connection: Close\r\n\r\n"; $socket = @fsockopen('forum.antichat.ru', 80, $errno, $errstr, 30); fputs($socket, $send); $line = ''; while(!feof($socket)){ $line .= fgets($socket, 4096); } preg_match('#<td class="alt1" width="100%">(.+)<\/div>#Us', $line, $out); return strip_tags($out[1]); } echo send(); ?> UPD: Бля, чё тупанул. можно было и без сокетов)) PHP: <?php $site = file_get_contents('/'); preg_match('#<td class="alt1" width="100%">(.+)<\/div>#Us', $site, $out); echo strip_tags($out[1]); ?>
Сам когда-то писал PHP: <?php $rss=simplexml_load_file('/news.rss'); foreach ($rss->channel->item as $item) { echo "<a href='". $item->link. "'>". iconv("UTF-8", "WINDOWS-1251", $item->title). "</a>"; echo "<p>". iconv("UTF-8", "WINDOWS-1251", $item->description). "</p>"; } ?>