Онлайн пользователи в приложении

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Онлайн пользователи в приложении

Сообщение ZEBC »

Помогите имеется такой код вывода кто онлайн в игре

Код: Выделить всё

  <? require_once ("config.php.ini");require_once ("func.php"); if(!connect(DB_HOST,DB_NAME,DB_USER,DB_PASS)) echo "Не удалось подключиться к бд.<br>";     $time=time();       $sql=mysql_query("SELECT `vkid`,`name`,`votes`,`votesB`,`ip` FROM `users` WHERE `last_activity`>(".($time-61).")");    echo "<b>"; echo mysql_affected_rows(); echo "</b>"; echo " Онлайн"; ?>  
но из базы он выводит - 1 Онлайн что неправильно
Fedya
Сообщения: 174
Зарегистрирован: 21 июл 2012, 19:56

Re: Онлайн пользователи в приложении

Сообщение Fedya »

mysql_affected_rows() не работает с SELECT -- только с запросами, модифицирующими таблицу. Чтобы получить количество рядов, возвращённых SELECT-запросом, используйте функцию mysql_num_rows().


Если последний запрос был неудачным, функция вернёт -1.
http://www.php.su/functions/?mysql-affected-rows
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: Онлайн пользователи в приложении

Сообщение ZEBC »

Fedya
сделал так

Код: Выделить всё

  <? require_once ("config.php.ini");require_once ("func.php"); if(!connect(DB_HOST,DB_NAME,DB_USER,DB_PASS)) echo "Не удалось подключиться к бд.<br>";     $time=time();       $sql=mysql_query("SELECT `vkid`,`name`,`votes`,`votesB`,`ip` FROM `users` WHERE `last_activity`>(".($time-61).")");    echo "<b>"; echo mysql_num_rows(); echo "</b>"; echo " Онлайн"; ?>  
выводит просто Онлайн хотя онлайн люди есть :D
Fedya
Сообщения: 174
Зарегистрирован: 21 июл 2012, 19:56

Re: Онлайн пользователи в приложении

Сообщение Fedya »

Код: Выделить всё

mysql_num_rows($sql);
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: Онлайн пользователи в приложении

Сообщение ZEBC »

Fedya
тоже самое

Код: Выделить всё

 <? require_once ("config.php.ini");require_once ("func.php"); if(!connect(DB_HOST,DB_NAME,DB_USER,DB_PASS)) echo "Не удалось подключиться к бд.<br>";     $time=time();      $sql=mysql_query("SELECT `vkid`,`name`,`votes`,`votesB`,`ip` FROM `users` WHERE `last_activity`>(".($time-61).")");    echo "<b>"; echo mysql_num_rows($sql); echo "</b>"; echo " Онлайн"; ?>   
просто онлайн
Fedya
Сообщения: 174
Зарегистрирован: 21 июл 2012, 19:56

Re: Онлайн пользователи в приложении

Сообщение Fedya »

Если тут есть ошибка, то она в условии,

Код: Выделить всё

`last_activity`>(".($time-61).")
потому что у меня все работает.

Попробуй так

Код: Выделить всё

 <?require_once ("config.php.ini");require_once ("func.php"); if(!connect(DB_HOST,DB_NAME,DB_USER,DB_PASS)) echo "Не удалось подключиться к бд.<br>";     $time = time() - 61;      $sql = mysql_query("SELECT `vkid`,`name`,`votes`,`votesB`,`ip` FROM `users` WHERE `last_activity` > {$time}");        if(mysql_num_rows($sql)>0){        echo "<b>".mysql_num_rows($sql)."</b> Онлайн";    }    else{        echo "Все оффлайн";    }?> 
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: Онлайн пользователи в приложении

Сообщение ZEBC »

Fedya
Твой код вывел просто Все оффлайн не пойму что не так
Fedya
Сообщения: 174
Зарегистрирован: 21 июл 2012, 19:56

Re: Онлайн пользователи в приложении

Сообщение Fedya »

last_activity это поле точно нормально обновляется?
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: Онлайн пользователи в приложении

Сообщение ZEBC »

Fedya
да нормально обновляется

обновил приложение дата изменилась

помогите ( :cry:
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: Онлайн пользователи в приложении

Сообщение ZEBC »

Fedya
моя ошибка была ) спасибо большое поля votesB небыло в бд удалил его заработало )

а как вывести еще и имя и фамилию ? кто онлайн так не работает (

Код: Выделить всё

  echo "<td>".$row['name']."</td>\n";  
Ответить