Foros del Web » Programando para Internet » PHP »

Detectar con PHP cuando Mysql devuelve vacío.

Estas en el tema de Detectar con PHP cuando Mysql devuelve vacío. en el foro de PHP en Foros del Web. Saludos. Tengo un problemita. Necesito consultar a una tabla si el correo y puntos de un usuario x está en la base de datos. El ...
  #1 (permalink)  
Antiguo 08/04/2009, 09:53
Avatar de SCY-FOX  
Fecha de Ingreso: septiembre-2007
Ubicación: Chile
Mensajes: 139
Antigüedad: 16 años, 7 meses
Puntos: 5
Exclamación

Saludos.

Tengo un problemita.

Necesito consultar a una tabla si el correo y puntos de un usuario x está en la base de datos.

El problema es que no puedo frenar el acceso porque mysql no tira error, sinó que devuelve vacio.

"MySQL ha devuelto un valor vacío".

Mi consulta es la siguiente:

Código PHP:
$sql    =    "SELECT * FROM tabla WHERE correo = '".$correo."' AND puntaje = '".$puntaje."' ";
        
$resultado    =    mysql_query($sql);
        
        echo 
$sql;
        
    
        if (!
$resultado)
            {
                echo 
"Error consultando a la base de datos " mysql_error();
                die();
            } else {
                            if (empty(
$resultado)) {
                                echo 
"<script type='text/javascript'>alert('Lo sentimos, los datos ingresados son incorrectos');</script>";
                                echo 
"<script type='text/javascript'>window.location='index.php';</script>";
                                die();
                            } else {
                                            echo 
"FUNCIONA";
                                            }
                            
                                
                            } 
// FIN ELSE CONEXION 
He probado con if empty, valor == '', valor == ' ' , valor == 0, valor == NULL y no me funciona ninguno.

Estaba pensando hacer un SELECT count, pero no recuerdo como se hace y tampoco si funcionará.

¿Cómo puedo filtrar si devuelve valor vacío para rutear a otra página??


I need help.


Silla!

EA EA

RESUELTO

primero añadir esto:
Código PHP:
$totalFilas    =    mysql_num_rows($resultado); 
y cambiar el if por:

Código PHP:
$totalFilas == 

Muchas gracias de todas formas.
Estuve leyendo en otros lados, que a pesar de ser un valor vacío, no es lo mismo que null o ''
Además es una consulta válida (pero errónea), por lo que otros métodos de control sufren los mismos efectos.

La mejor opción era transformar ese valor "vacío" en un valor real, así que conté la cantidad de filas que volvían "válidas". Como llegan CERO filas (número real), pude validar y rutear correctamente.


Silla!

Última edición por GatorV; 08/04/2009 a las 13:24
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 15:44.