Foros del Web » Programando para Internet » PHP »

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource.

Estas en el tema de Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource. en el foro de PHP en Foros del Web. Hola amig@s del forosdelweb, soy nuevo en este de php y tengo un problema. Al entrar a mi página, me sale de primero esa advertencia ...
  #1 (permalink)  
Antiguo 06/12/2013, 15:34
Avatar de habboruly11  
Fecha de Ingreso: diciembre-2013
Ubicación: Bogotá
Mensajes: 1
Antigüedad: 10 años, 4 meses
Puntos: 0
Pregunta Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource.

Hola amig@s del forosdelweb, soy nuevo en este de php y tengo un problema. Al entrar a mi página, me sale de primero esa advertencia del título, y quisiera saber cómo quitarla. Los datos que salen en la línea que me indica (333) son los siguientes:

Código PHP:
// #########################################################################
// VIP CHECK
// #########################################################################

    
$vip_a mysql_query("SELECT * FROM vip WHERE id_user = '".$my_id."'");
    
$vip mysql_num_rows($vip_a);
    function 
getVIPDays($my_id){

        
$sql mysql_query("SELECT timestamp,timestampend FROM vip WHERE id_user = '".$my_id."' LIMIT 1") or die(mysql_error());
        
        if (
mysql_num_rows($sql) == '0'){
            return 
'0';
        }
        
        
$data mysql_fetch_assoc($sql);
        
$diff $data['timestampend'] - time();
        
        if (
$diff <= '0'){
            return 
'0';
        }
        
        return 
ceil($diff '86400');
    } 
La línea 333 es $vip = mysql_num_rows($vip_a); y quisiera saber qué estoy haciendo mal...
  #2 (permalink)  
Antiguo 06/12/2013, 16:38
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result r

Cita:
La línea 333 es $vip = mysql_num_rows($vip_a); y quisiera saber qué estoy haciendo mal...
Lo más probable es que la consulta no esté devolviendo datos sino un error de algún tipo, y tu asumes que funciona bien, pero no lo verificas.
Al menos ESO es algo que debes hacer siempre: verificar si lo que regresó es algo correcto. Pero ni siquiera te estás molestando en obtener el mensaje de error que pueda estar devolviendo MySQL...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 07/12/2013, 09:48
 
Fecha de Ingreso: diciembre-2012
Mensajes: 178
Antigüedad: 11 años, 3 meses
Puntos: 2
Respuesta: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result r

haz un
Código PHP:
Ver original
  1. echo $vip_a
despues de la consulta para ver si esta haciendo lo que tu quieres o para saber cual es el error
__________________
clasificados nunca se sabe todo
  #4 (permalink)  
Antiguo 07/12/2013, 10:13
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 1 mes
Puntos: 96
Respuesta: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result r

Cita:
Iniciado por alexperaza Ver Mensaje
haz un
Código PHP:
Ver original
  1. echo $vip_a
despues de la consulta para ver si esta haciendo lo que tu quieres o para saber cual es el error
No serviria de mucho, ya que la consulta esta dentro de la funcion, si no imprime "Resource #xx" imprimira FALSE o dara error
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #5 (permalink)  
Antiguo 07/12/2013, 11:18
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result r

Haz al menos algo básico, de manual. Algo como:
Código PHP:
// #########################################################
// VIP CHECK
// ##########################################################

    
$vip_a mysql_query("SELECT * FROM vip WHERE id_user = '".$my_id."'") or die("Error: ".mysql_error());
    if (
$vip_a)
    {
    
$vip mysql_num_rows($vip_a);
     } 
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: mysql, result, select, sql, warning
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:09.