![Pensando](http://static.forosdelweb.com/fdwtheme/images/smilies/scratchchin.gif)
Código PHP:
$totalUsrVisit = mysql_num_rows(mysql_query("SELECT DISTINCT ip_usr FROM $sql_tabla_count_pulsa") ) or die("MySQL dice: ".mysql_error());
![Adios](http://static.forosdelweb.com/fdwtheme/images/smilies/adios.gif)
| |||
Hola, No es que salga un error. El problema es que con mysql_num_rows() no hay que usar el or die(). La explicacion esta en como funciona el or. En PHP las operaciones booleanas se ejecutan en "cortocircuito". Solo se evaluan los operadores necesarios para tener una respuesta. Con el or se evalua solo hasta el primer TRUE. En mysql_query() y demas funciones mysql_* que devuelven un valor distinto a 0 si son correctas o false en caso de error, el truco del or die() funciona, porque devuelven falso y se evalua el die(). Pero mysql_num_rows(), aun cuando no de error, puede devolver 0. Y en PHP 0 es equivalente a falso. Y por eso evalua el die(). Resumiendo, no uses or die() con mysql_num_rows(). Y no quieras crear codigo "inteligente", juntando en una linea dos. Yo recomiendo no poner nunca el mysql_query() como parametro de otra funcion. Tu codigo deberia ser: Código PHP: Saludos. PD: Si solo quieres el numero de ip distintas, quizas seria mejor hacer un COUNT().
__________________ Josemi Aprendiz de mucho, maestro de poco. |
| ||||
Saludos Antes de mostrar datos, puedes preguntar por la variable de conección a la db. if ($result) { //procesas los resultados; }elseif (!$result) { echo "No existen datos con esas condiciones"; } Suerte
__________________ José Molina La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente. |