explode()

Печать RSS
132

Р
Автор
Пришелец
0
У меня есть код кто онлайн для чата, с помощью выводятся комнаты и онлайн пользователи в этих комнатах, мне же нужно что бы из файла запрашивался онлайн только одной комнаты и его пользователи
Изменил: Рюук (21.06.2010 / 12:31)
Р
Автор
Пришелец
0
<?
require_once"../template/start.php";
require_once"../template/regglobals.php";
require_once"../template/config.php";
require_once"../template/functions.php";
require_once"../template/antidos.php";
require_once"../template/cookies.php";
require_once"../template/gzip.php";
require_once"../template/header.php";
require_once"../template/referer.php";
include_once"../template/isset.php";
echo'
<script type="text/javascript">
function locs(){
document.location.href="";
}
setTimeout("locs()", 5000);
</script>

<style type="text/css">
BODY {
 background:

  url("../images/fonchat.jpeg") /* Путь к графическому файлу */
  repeat; /* Повторение по вертикали */
}
</style>';




$text = file(BASEDIR."local/profil/$log.prof"); 
if ($text!=""){
$udata = explode(":||:",$text[0]);
$provlog=trim($udata[0]);
$provpar=trim($udata[1]);
$privat=trim($udata[10]);}

$time=time();
$k_chel_chat='0';
if (file_exists("../chat/datachat/rooms.dat"))
{
$datachat=file("../chat/datachat/rooms.dat");
$datachat_k=count($datachat);
$file_online=file("../chat/datachat/online.dat");
$file_online_k=count($file_online);
for ($i=0;$i<$datachat_k;$i++)
{
$k_chel_r='0';
$rooms=explode(":||:",$datachat[$i]);
echo "<div class=\"b\"><a href=\"chat.php?id_room=$rooms[0]&amp;".SID."\"><b style=\"font-weight: 600;\"><font color=\"999999\">$rooms[1]</font></b></a></div>";
for ($z=0;$z<$file_online_k;$z++)
{
$onlines5=explode(":||:",$file_online[$z]);
if ($onlines5[1]==$rooms[0] && $time<$onlines5[2]+90)
{
$k_chel_r++;
echo "<font color=\"ffffff\">$onlines5[0] </font>";
}
}
if ($k_chel_r=='0')
{echo "<font color=\"ffffff\">Никого нет</font>";}
}
}
?>
Р
Автор
Пришелец
0
Пример файла rooms.dat
1876168442:||:Викторина:||:1:||::||::||::||::||::||::||::||::||::||::||:
1634745216:||:Клуб:||::||:0:||:1:||::||::||::||::||::||::||::||::||:
1579903450:||:Знакомства:||::||::||::||::||::||::||::||::||::||::||::||:
1975618992:||:Общия:||::||::||::||::||::||::||::||::||::||::||::||:
1665344041:||:Курилка:||::||::||::||::||::||::||::||::||::||::||::||:
1491730929:||:Дискотека:||::||:1:||::||::||::||::||::||::||::||::||::||:
2106534384:||:Интересы:||::||::||::||::||::||::||::||::||::||::||::||:
1290364568:||:Сортир:||::||::||::||::||::||::||::||::||::||::||::||:
Р
Автор
Пришелец
0
Пример файла online.dat
SLIVA:||:1665344041:||:1223917019:||::||::||::||::||::||::||:
TestUser:||:1876168442:||:1277107515:||::||::||::||::||::||::||:
Kakashi:||:1876168442:||:1277109180:||::||::||::||::||::||::||:

Р
Автор
Пришелец
0
Если не сложно помогите
А

Сказочник
0
ну чтоб одна комната выводилась, то присвой $datachat_k = 1;
ну и все онлайн пользователи будут выводиться только для этой комнаты
Р
Автор
Пришелец
0
А мне нужно для каждой комнаты, тобиш когда я ввожу $datachat_k = '1'; выводится первая, а если мне нужна вторая комната и онлайн в ней?
А

Сказочник
0
нет, это вывод первой комнаты из файла rooms.dat
если написать 2, то выведет 2 комнаты попорядку.
Р
Автор
Пришелец
0
Да нет смотри, я хочу изменить файл who.php так чтобы для каждой комнаты выводился свой онлайн, но беда в том что я не знаю что нужно присвоить $datachat_k = чтобы выводился онлайн ТОЛЬКО первой или ТОЛЬКО третьей комнаты
А

Сказочник
0
дак тут и выводится свой онлайн для каждой комнаты.
а чтоб некоторые не выводить, можно после $rooms=explode(":||:",$datachat[$i]);
сделать проверку на $rooms[0]=='номеркомнаты' типа 1876168442 - викторина.
если норм, то продолжаем, если нет, то идем дальше по циклу.
Делов то..
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск