Всем привет!
Есть вот такой код
[php:1:362e9477b8]
<?
#--- ЕСЛИ ПОЛЬЗОВАТЕЛЬ В ОНЛАЙНЕ ТО ВЫВОДИМ ЕГО ---#
$req = mysql_query("SELECT * FROM online WHERE laikas > '$timeout' and usr!='$log'");
While($who = mysql_fetch_array($req))
{
#--- ВЫВОДИМ СТРАНИЦУ НА КОТОРОЙ СЕЙЧЯС ПОЛЬЗОВАТЕЛЬ ---#
$reqs = mysql_query("SELECT * FROM `mesto` WHERE `usr` = '$who[usr]' LIMIT 1");
$mesto = mysql_fetch_array($reqs);
#--- ВЫВОДИМ ИНФОРМАЦИИ ОБ ЭТОМ ПОЛЬЗОВАТЕЛИ ---#
$reqcl = mysql_query("SELECT * FROM `users` WHERE `usr` = '$who[usr]'");
$usr = mysql_fetch_array($reqcl);
#--- ЕСЛИ ПОЛЬЗОВАТЕЛЬ НА СТРАНИЦЕ "main" ТО ПОКАЗЫВАЕМ ЕГО ---#
if($mesto[page] == 'main'){
echo $usr[log].'|'.$mesto[page];
}
}
?>
[/php:1:362e9477b8]
этот код выводит всех юзеров что в онлайне и находятся на странице "main"
так вот как мне составить этот код чтоб не было запросов в цыкле.
так как запросы в цыкле замедляют загрузку страниц насколько я знаю.
Может кто то поможет?
SELECT * FROM online.o, mesto.m, users.u WHERE o.laikas > '$timeout AND m.usr='$who[usr]' AND u.usr='$who[usr]' GROUP BY u.usr
добавлено спустя:
Возможно неправильный где-то, но в этом направлении копать надо.
шизофф, пиши все в одну таблицу
добавлено спустя 20 секунд:
Ink пишет:
"SELECT * FROM online.o, mesto.m, users.u WHERE o.laikas > '$timeout AND m.usr='$who[usr]' AND u.usr='$who[usr]' GROUP BY u.usr
добавлено спустя:
Возможно неправильный где-то, но в этом направлении копать надо."
этот селект тоже будет ресурсоемким
это обычный join. Не лучшая реализация для этой задачи. Автору следует послушать oee и писать все данные в таблицу юзера. У тебя чрезмерная нормализация пошла уже.
17 Апр 2012, 21:55"SELECT * FROM online o
LEFT JOIN mesto m ON m.usr = o.usr
LEFT JOIN users u ON u.usr = o.usr
WHERE o.laikas > '$timeout' and o.usr!='$log'
Всем спасибо!
Чтоб не плодить темы я задам еще один вопрос.
Как можно скрыть исходный код страницы от пользователя?
ну например чтоб выводился не код разными символами, или хоть часть кода.
так как не хочется чтоб слили дизайн с сайта)
Можно выдавать код страницы в base64 и на яваскрипт преобразовывать.
Но если очень надо, то все равно стыбзят.