Ver Mensaje Individual
  #4 (permalink)  
Antiguo 31/05/2014, 22:20
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: hacer una consulta de comprobación por numero mayor

La query que usas verifica que sea mayor a uno (1), no a cero (0), por lo que tiene un error lógico. El 1 se está interpretando como valor para salida por negativo.
¿Se entiende?, Serán true valores de 2 y superiores, pero no el 1.
Código PHP:
Ver original
  1. $query = "SELECT COUNT(*) total  FROM card_reward WHERE serial= '$serial_01' AND usos>0 ";
  2. $result = mysql_query($query) or die(mysql_error());
  3. $row = mysql_fetch_array($result);
  4. if ($row['total']) > 0 {
  5. echo "Si, aun hay números mayores";
  6. } else {
  7. echo "negativo, numero 0";
  8. }
Esto, siempre y cuando $serial_01 contenga datos, porque de lo contrario dará resultado "negativo" por error de parámetros, y no por datos.
Si el campo "serial" es numérico, yo lo escribiría así:
Código PHP:
Ver original
  1. $query = "SELECT COUNT(*) total  FROM card_reward WHERE serial= $serial_01 AND usos>0 ";
De ese modo si la variable llega con un valor nulo, o con un valor no numérico, disparará un error de sintaxis, fácilmente detectale.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)