[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите с Mysql пожалуйсто
Гость_Дмитрий
У меня есть таблица accounts , в ней столбец online (1 - online, 2 - offline ) показывает online людей. Как поставить счетчик то есть если у первого человека online то ($on++) - счетчик . И в конце выводит сумарное количество $on. С MySql если знаком, делал по старому примеру, но это глупо.


$online=0;
$ath =mysql_query("SELECT `online` FROM `characters` WHERE `online`='{1}'");
if (mysql_num_rows($ath )>0){
$message = "Online: ".$online;
echo "\n&Message=".$message;
$online++;
}
else{
$message = "...";
echo "&Message=".$message;
}
mysql_close($msconnect);

Всегда 0 выводит, знаю что счетчик не там ставить надо, а куда ??



Спустя 54 секунды (11.03.2010 - 17:17) Гость_Дмитрий написал(а):
Извеняюсь там не $ath =mysql_query("SELECT `online` FROM `characters` WHERE `online`='{1}'");
а $ath =mysql_query("SELECT `online` FROM `accounts` WHERE `online`='{1}'");

Спустя 2 часа, 53 минуты, 31 секунда (11.03.2010 - 20:11) Rigel написал(а):
А зачем такое обрамление {1}?

попробуй просто так:
$ath = mysql_query("SELECT `online` FROM `accounts` WHERE `online`=1"); 

Спустя 11 минут, 55 секунд (11.03.2010 - 20:23) Rigel написал(а):
<?php
$link = @mysql_connect("localhost", "user", "pass") or die(mysql_error());
@mysql_select_db("accounts", $link) or die(mysql_error());
$online=0;
$ath =mysql_query("SELECT * FROM `accounts` WHERE `online`=1");
echo "Пользователей онлайн: ".mysql_num_rows($ath);
mysql_close($link);
?>

Спустя 1 час, 31 минута, 6 секунд (11.03.2010 - 21:54) phpprogs написал(а):
Цитата (Rigel @ 11.03.2010 - 17:23)
<?php
$link = @mysql_connect("localhost", "user", "pass") or die(mysql_error());
@mysql_select_db("accounts", $link) or die(mysql_error());
$online=0;
$ath =mysql_query("SELECT * FROM `accounts` WHERE `online`=1");
echo "Пользователей онлайн: ".mysql_num_rows($ath);
mysql_close($link);
?>

А зачем выборку всех строк делать, у который online=1?
Не легче сделать:
SELECT count(*) as total FROM `accounts` WHERE `online`=1


и потом просто взять $row['total']? В Вашем варианте PHP может вылететь по памяти, если данных много

Спустя 2 часа, 43 минуты, 3 секунды (12.03.2010 - 00:37) Rigel написал(а):
phpprogs
точно! я дурак rolleyes.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.