Foros del Web » Programando para Internet » PHP »

mysql_num_rows

Estas en el tema de mysql_num_rows en el foro de PHP en Foros del Web. Hola Tengo este error y no he conseguido averiguar que es este el código Código PHP: if( $id_cat == 0 )      $consulta = mysql_query ...
  #1 (permalink)  
Antiguo 17/12/2009, 00:34
 
Fecha de Ingreso: diciembre-2009
Mensajes: 3
Antigüedad: 14 años, 4 meses
Puntos: 0
Pregunta mysql_num_rows

Hola
Tengo este error y no he conseguido averiguar que es
este el código
Código PHP:
if($id_cat==0)
    
$consulta=mysql_query("SELECT * FROM producto WHERE nombre
 LIKE '%"
.$_GET['texto']."%' ORDER BY nombre",$conexion) or die(mysql_error());
else
    
$consulta=mysql_query("SELECT * FROM producto WHERE nombre 
LIKE '%"
.$_GET['texto']."%' AND categoria=$categoria ORDER BY nombre",$conexion) or die(mysql_error());
if(
mysql_num_rows($consulta)==0)
        echo 
'<p class="titulo">No se encontraron resultados</p>'
El error es "mysql_num_rows(): supplied argument is not a valid MySQL result resource", si omito esa linea funciona todo bien.Espero que me ayuden porque me resulta muy extraño
Gracias
  #2 (permalink)  
Antiguo 17/12/2009, 06:27
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: mysql_num_rows

tienes errores de sintaxis en la cadena SQL, creo que debes encerrar entre comillas a categoría:

"SELECT * FROM producto WHERE nombre
LIKE '%".$_GET['texto']."%' AND categoria='$categoria' ORDER BY nombre"
  #3 (permalink)  
Antiguo 17/12/2009, 11:48
 
Fecha de Ingreso: diciembre-2009
Mensajes: 3
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: mysql_num_rows

Hice la correccion que sugeriste pero sigo encontrando el mismo problema.
"mysql_num_rows(): supplied argument is not a valid MySQL result resource"
Talvez utilizando un metodo alternativo al mysql_num_rows?
  #4 (permalink)  
Antiguo 17/12/2009, 11:55
 
Fecha de Ingreso: octubre-2007
Mensajes: 118
Antigüedad: 16 años, 5 meses
Puntos: 11
Respuesta: mysql_num_rows

Lo he mirado y parece estar bien , pero prueba a escribirlo asi mejor por si las moscas:

Código PHP:
<?php 
if($id_cat==0){
    
$consulta=mysql_query("SELECT * FROM producto WHERE nombre
 LIKE '%"
.$_GET['texto']."%' ORDER BY nombre",$conexion) or die(mysql_error());
}else{
    
$consulta=mysql_query("SELECT * FROM producto WHERE nombre 
LIKE '%"
.$_GET['texto']."%' AND categoria=".$categoria." ORDER BY nombre",$conexion) or die(mysql_error());
}
if(
mysql_num_rows($consulta)==0)
        echo 
'<p class="titulo">No se encontraron resultados</p>';  
        
?>
Aun asi yo probaria primero con la primera consulta a ver si te funcionara solo esa y luego la otra.. a ver si es error de sintaxis, o la consulta... que ahi ya no se si estara bien o no :\
  #5 (permalink)  
Antiguo 17/12/2009, 12:07
 
Fecha de Ingreso: diciembre-2009
Mensajes: 3
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: mysql_num_rows

Copie el código como esta arriba y probe las consultas agregue
Código PHP:
$fila=mysql_fetch_assoc($consulta);
    echo 
$fila['ruta']; 
despues de cada consulta y si imprime la ruta en cada uno de los casos pero omitiendo la condicion de mysql_num_rows si la agrego regresa la advertencia
lo veo muy raro porque yo recuerdo a ver utilizado esta funcion antes sin ningun tipo de problemas
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 19:03.