[PHP]  Comprobar consulta pero solo recibir boleano..
Como puedo a través de la siguiente consulta, conseguir un valor boleano de 0 y 1? Si esta online, que devuelva 1. Si NO esta online que devuelva 0...

Como puedo a través de la siguiente consulta, conseguir un valor boleano de 0 y 1?

Si esta online, que devuelva 1.
Si NO esta online que devuelva 0.

// Mostrar si el usuario esta online, en el tema
$past_tense = time()-300; //Tiempo en segundos, contando 5 minutos
$getu_online = $db->query("SELECT user_id FROM " . TABLE_PREFIX . "sessions WHERE updated >= '$past_tense' AND user_id = '" . $postsdata['poster_id'] . "'");

Gracias de antemano.
Bueno primero unos detalles:
  • Deberías hacer uso de TIME_NOW en lugar de time(), para ser amistodo con MyBB.
  • Yo usaría $db->simple_select(); en lugar de $db->query().
  • Puesto que solo quieres un valor bool, deberías usar un limite para la query.

Quizás esto es lo que quieres:
$bool = $db->fetch_field($getu_online, 'user_id');
if($bool)
{
// true/1
}
Omar G.
Omar G.
26 Aug, 2012, 8:19 pmOmar G. escribió:
Bueno primero unos detalles:
  • Deberías hacer uso de TIME_NOW en lugar de time(), para ser amistodo con MyBB.
  • Yo usaría $db->simple_select(); en lugar de $db->query().
  • Puesto que solo quieres un valor bool, deberías usar un limite para la query.

Quizás esto es lo que quieres:
$bool = $db->fetch_field($getu_online, 'user_id');
if($bool)
{
// true/1
}

Se me olvido decir que esto no es para MyBB, como lo cambio a php "normal"..
Bueno entonces depende de que sistema de base de datos uses, y para que sistema estas escribiendo esto.
Omar G.
Es para UseBB, pero haz como que fuera esto:

$past_tense = time()-300; //Tiempo en segundos, contando 5 minutos
$getu_online = mysql_query("SELECT user_id FROM sessions WHERE updated >= '$past_tense' AND user_id = '" . $postsdata['poster_id'] . "'");

Creo que hay menos complicaciones.
Entonces haces:
$bool = mysql_fetch_assoc($getu_online);
if(is_array($bool) && array_key_exists('user_id', $bool) && $bool['user_id'])
{
// true/1
} 
Omar G.
Última modificación: 26 Aug, 2012, 9:28 pm por nicods_20055.
Perdón por la demora, pero todo lo que estaba haciendo con esto quedo en nada..
Bueno si explicas que fue el resultado/error/problema quizas podamos ayudarte mas.
Omar G.
Bueno, lo que quería armar era que me mostrara si el usuario estaba online u offline en el perfil/postbit (UseBB) pero siempre me marcaba que estaba offline.

Pero bueno ya es tema aparte, me contacte con el mismo creador de UseBB & dijo que la comunidad no era muy activa de hace años, así que pienso dejarlo solo para cuando tenga el tiempo suficiente.
Colaboradores
Omar G.
This forum uses Lukasz Tkacz MyBB addons.