Ver Mensaje Individual
  #10 (permalink)  
Antiguo 13/10/2015, 17:31
Avatar de pateketrueke
pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 11 meses
Puntos: 2534
Respuesta: Problema con mysql_num_rows

¿Cómo? ¿No pudiste hacer esto?

Código PHP:
Ver original
  1. $resultado=mysql_query("SELECT * FROM ".$db_table_name." WHERE Email = '".$subs_email."'", $db_connection);
  2.  
  3. if (!$resultado) {
  4.   die('ERROR: ' . mysql_error());
  5. }
  6.  
  7. if (mysql_num_rows($resultado)>0) // ...

Sólo así sabrás exactamente cual es el error que genera la consulta.

Pues, si consultarás más a menudo el manual descubrirías que mysql_query() devuelve un boolean en lugar de un resource cuando ocurre un error:

Cita:
Iniciado por http://php.net/mysql_query
Valores devueltos ¶

Para SELECT, SHOW, DESCRIBE, EXPLAIN y otras sentencias que retornan un conjunto de resultados, mysql_query() devuelve un resource en caso de éxito, o FALSE en caso de error.

Para otros tipos de sentencias SQL, tales como INSERT, UPDATE, DELETE, DROP, etc, mysql_query() devuelve TRUE en caso de éxito o FALSE en caso de error.

El conjunto de resultados devuelto debería ser pasado a mysql_fetch_array(), y otras funciones para manejar las tablas del resultado, para acceder a los datos retornados.

Use mysql_num_rows() para averiguar cuántas filas fueron devueltas por la sentencia SELECT, o mysql_affected_rows() para averiguar cuántas filas fueron afectadas por las sentencias DELETE, INSERT, REPLACE, o UPDATE.

mysql_query() también fallará y retornará FALSE si el usuario no está autorizado para acceder a la/s tabla/s a la/s que hace referencia la consulta.
A partir de ahí si usas mysql_num_rows() y arroja el error:

Cita:
mysql_num_rows() expects parameter 1 to be resource, boolean given
Entonces deduces que mysql_query() produce el error.

¿Ahora si entiendes a lo que me refiero con depurar tu código o no?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Última edición por pateketrueke; 13/10/2015 a las 17:42 Razón: referencia al manual