Foros del Web » Programando para Internet » PHP »

mysql_num_rows expects parameter 1 to be resource boolean given in

Estas en el tema de mysql_num_rows expects parameter 1 to be resource boolean given in en el foro de PHP en Foros del Web. Me salta ese error, este es el codigo: Código PHP: public function  marcarPrincipal ( $id_anuncio )     {                   $this -> conexion -> crearConexion ();          ...
  #1 (permalink)  
Antiguo 18/01/2012, 04:14
Avatar de silvia_net  
Fecha de Ingreso: enero-2012
Mensajes: 31
Antigüedad: 12 años, 3 meses
Puntos: 0
mysql_num_rows expects parameter 1 to be resource boolean given in

Me salta ese error, este es el codigo:

Código PHP:

public function marcarPrincipal($id_anuncio)
    {
        
        
$this->conexion->crearConexion();
        
        try
        {
                
            
//Entonces, seleccionamos los datos de la fotografia para saber si es la imagen principal.
            
$consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio=".$id_anuncio    ;
            
$resultado4=mysql_query($consulta4);
            
        if (
mysql_num_rows ($resultado4 )>0){
            
$tupla4=mysql_fetch_array($resultado4);
            
$id_foto=$tupla4['id_foto'];        
    
            if(
$id_foto!=0)
            {
                
$consulta3="UPDATE tbl_fotos SET principal=1 WHERE id_foto=".$id_foto;
                
$resultado3=@mysql_query($consulta3);
            }
        }
            
        }
        catch(
Exception $excepcion)
        {
            
$this->error="Problemas en el metodo listarFotosAnuncio";
        }
        
        
$this->conexion->cerrarConexion();
        return 
$foto;
    } 
La linea en donde me marca el error: if (mysql_num_rows ($resultado4 )>0){

Hay algun error de sintaxis? o de algo?
  #2 (permalink)  
Antiguo 18/01/2012, 04:17
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

No se vé la linea subrayada.
En cualquier caso la select está mal.
Haz echo de todas tus varibales con las sentencias sql y compruebalas en un cliente MySQ a ver si funcionan. Desde luego esto está mal:

Código MySQL:
Ver original
  1. $consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio=".$    ;

Saludos,
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 18/01/2012, 04:20
Avatar de silvia_net  
Fecha de Ingreso: enero-2012
Mensajes: 31
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

Perdon eso fue un error al copiar y pegar xD

Esta editado el post
  #4 (permalink)  
Antiguo 18/01/2012, 04:22
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

Prueba así:

Código PHP:
Ver original
  1. $consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio='".$id_anuncio."';

por ejemplo.
__________________
Fere libenter homines, id quod volunt, credunt.
  #5 (permalink)  
Antiguo 18/01/2012, 04:31
Avatar de silvia_net  
Fecha de Ingreso: enero-2012
Mensajes: 31
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

Cita:
Iniciado por repara2 Ver Mensaje
Prueba así:

Código PHP:
Ver original
  1. $consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio='".$id_anuncio."';

por ejemplo.
Al poner eso se me desactiva todo el codigo posterior :S
  #6 (permalink)  
Antiguo 18/01/2012, 05:10
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

1.
$consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio='".$id_anuncio."'";
__________________
Fere libenter homines, id quod volunt, credunt.
  #7 (permalink)  
Antiguo 18/01/2012, 05:22
Avatar de silvia_net  
Fecha de Ingreso: enero-2012
Mensajes: 31
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

ahora me sale esto

Parse error: syntax error, unexpected T_VARIABLE in C:\wamp\www\tuwebanuncios\class\anuncios.php on line 2737
  #8 (permalink)  
Antiguo 18/01/2012, 05:36
Avatar de silvia_net  
Fecha de Ingreso: enero-2012
Mensajes: 31
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

Eran unas comillas.

Ahora no me salta error, pero intento meter un anuncio en la BD y no lo mete, simplemente hace como que envia el formulario, me lleva al listado de anuncios y no sale :S
  #9 (permalink)  
Antiguo 18/01/2012, 06:15
Avatar de silvia_net  
Fecha de Ingreso: enero-2012
Mensajes: 31
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

No entiendo nada! :(

Es una web en la que tengo varias secciones, he añadido una nueva, clonándola de otra, y añadiendo lo necesario en la BD y en los archivos (variables, métodos clases y demás), sin embargo no funciona :((((
  #10 (permalink)  
Antiguo 18/01/2012, 08:04
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 16 años
Puntos: 7
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

hola. vi su post sobre su consulta. deberia ser asi.

Código PHP:
Ver original
  1. public function marcarPrincipal($id_anuncio)
  2. {
  3.    
  4.     $this->conexion->crearConexion();
  5.    
  6.     try
  7.     {
  8.            
  9.         //Entonces, seleccionamos los datos de la fotografia para saber si es la imagen principal.
  10.         $consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio=".$id_anuncio."";
  11.         $resultado4=mysql_query($consulta4);
  12.        
  13.     if (mysql_num_rows ($resultado4 )>0){
  14.         $tupla4=mysql_fetch_array($resultado4);
  15.         $id_foto=$tupla4['id_foto'];        
  16.  
  17.         if($id_foto!=0)
  18.         {
  19.             $consulta3="UPDATE tbl_fotos SET principal=1 WHERE id_foto=".$id_foto."";
  20.             $resultado3=@mysql_query($consulta3);
  21.         }
  22.     }
  23.        
  24.     }
  25.     catch(Exception $excepcion)
  26.     {
  27.         $this->error="Problemas en el metodo listarFotosAnuncio";
  28.     }
  29.    
  30.     $this->conexion->cerrarConexion();
  31.     return $foto;
  32. }

en la variable $consulta4, tu sql mostrabas de esta manera.

Código PHP:
Ver original
  1. $consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio=".$id_anuncio    ;

como te lo dijeron antes, esta mal la sintaxis. debe ser asi.

Código PHP:
Ver original
  1. $consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio=".$id_anuncio."";

tu campo id_anuncio debe ser de tipo id auto_increment. lo mismo debe pasar con la variable $consulta3.

una pregunta silvia_net. el codgo php tu lo desarrollaste ?.
  #11 (permalink)  
Antiguo 18/01/2012, 08:18
Avatar de silvia_net  
Fecha de Ingreso: enero-2012
Mensajes: 31
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

Cita:
Iniciado por esaenz22 Ver Mensaje
hola. vi su post sobre su consulta. deberia ser asi.

Código PHP:
Ver original
  1. public function marcarPrincipal($id_anuncio)
  2. {
  3.    
  4.     $this->conexion->crearConexion();
  5.    
  6.     try
  7.     {
  8.            
  9.         //Entonces, seleccionamos los datos de la fotografia para saber si es la imagen principal.
  10.         $consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio=".$id_anuncio."";
  11.         $resultado4=mysql_query($consulta4);
  12.        
  13.     if (mysql_num_rows ($resultado4 )>0){
  14.         $tupla4=mysql_fetch_array($resultado4);
  15.         $id_foto=$tupla4['id_foto'];        
  16.  
  17.         if($id_foto!=0)
  18.         {
  19.             $consulta3="UPDATE tbl_fotos SET principal=1 WHERE id_foto=".$id_foto."";
  20.             $resultado3=@mysql_query($consulta3);
  21.         }
  22.     }
  23.        
  24.     }
  25.     catch(Exception $excepcion)
  26.     {
  27.         $this->error="Problemas en el metodo listarFotosAnuncio";
  28.     }
  29.    
  30.     $this->conexion->cerrarConexion();
  31.     return $foto;
  32. }

en la variable $consulta4, tu sql mostrabas de esta manera.

Código PHP:
Ver original
  1. $consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio=".$id_anuncio    ;

como te lo dijeron antes, esta mal la sintaxis. debe ser asi.

Código PHP:
Ver original
  1. $consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio=".$id_anuncio."";

tu campo id_anuncio debe ser de tipo id auto_increment. lo mismo debe pasar con la variable $consulta3.

una pregunta silvia_net. el codgo php tu lo desarrollaste ?.
Hola, gracias voy a probar lo que me dices.
Y el codigo no lo desarrolle yo, esta hecho por otra persona.
  #12 (permalink)  
Antiguo 18/01/2012, 08:24
Avatar de silvia_net  
Fecha de Ingreso: enero-2012
Mensajes: 31
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

He puesto las cosas como me dices:

Código PHP:
public function marcarPrincipal($id_anuncio)
    {
        
        
$this->conexion->crearConexion();
        
        try
        {
                
            
//Entonces, seleccionamos los datos de la fotografia para saber si es la imagen principal.
            //$consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio=".$id_anuncio;
            
$consulta4="SELECT id_foto FROM tbl_fotos WHERE id_anuncio='".$id_anuncio."";

            
$resultado4=mysql_query($consulta4);
            
        if (
mysql_num_rows ($resultado4 )>0){
            
$tupla4=mysql_fetch_array($resultado4);
            
$id_foto=$tupla4['id_foto'];        
    
            if(
$id_foto!=0)
            {
                
$consulta3="UPDATE tbl_fotos SET principal=1 WHERE id_foto=".$id_foto."";
                
$resultado3=@mysql_query($consulta3);
            }
        }
            
        }
        catch(
Exception $excepcion)
        {
            
$this->error="Problemas en el metodo listarFotosAnuncio";
        }
        
        
$this->conexion->cerrarConexion();
        return 
$foto;
    } 
El campo id_anuncio es auto incremental.

http://i.imgur.com/kJcR2.png
  #13 (permalink)  
Antiguo 18/01/2012, 08:58
Avatar de silvia_net  
Fecha de Ingreso: enero-2012
Mensajes: 31
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

Lo raro es que es una funcion donde da el error, pero esa funcion la usan otros formularios de la pagina y todo bien :(
  #14 (permalink)  
Antiguo 18/01/2012, 09:37
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 16 años
Puntos: 7
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

Te recomiendo que leas las politicas del foro. en una de ellas dice que no debes responder ni repetir el mismo post.

por cierto. te envie un MP (mensaje privado).
  #15 (permalink)  
Antiguo 10/12/2012, 09:51
 
Fecha de Ingreso: agosto-2012
Ubicación: Arg
Mensajes: 48
Antigüedad: 11 años, 8 meses
Puntos: 3
Respuesta: mysql_num_rows expects parameter 1 to be resource boolean given in

Buenas.
Perdón por revivir este thread pero necesitba crear uno por el mismo problema y ya que está este abierto...en fin.

El código con el que estoy trabajando es el siguiente:

Código PHP:
Ver original
  1. $sel_tmp="SELECT codremito FROM remitostmp WHERE datediff('$hoy',fecha) > 2";
  2. $rs_tmp=mysql_query($sel_tmp);
  3. $contador=0;
  4.  
  5. WHILE ($CONTADOR < MYSQL_NUM_ROWS($RS_TMP)) {
  6.  
  7.     $codremito=mysql_result($rs_tmp,$contador,"codremito");
  8.     $sel_borrar="DELETE FROM remitolineatmp WHERE codremito='$codremito'";
  9.     $rs_borrar=mysql_query($sel_borrar);
  10.     $contador++;
  11. }


El código se repite tres o cuatro veces y siempre me marca el mismo error en todas las líneas en las que se repite (está en mayúsuculas para que se identifique más fácil).


Gracias.

Etiquetas: boolean, expects, mysql, parameter, sql
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 23:37.