Foros del Web » Programando para Internet » PHP »

error al mostrar max

Estas en el tema de error al mostrar max en el foro de PHP en Foros del Web. Buenas, tengo una db donde se guardan las visitas que se hacen a X secciones, y en X seccion se suma 1 cada vez que ...
  #1 (permalink)  
Antiguo 13/03/2008, 15:39
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 4 meses
Puntos: 1
error al mostrar max

Buenas, tengo una db donde se guardan las visitas que se hacen a X secciones, y en X seccion se suma 1 cada vez que se entra en esa seccion.

Aora lo que estoy aciendo es un codigo para que muestre cual es la mas visitada, pero me da un error y no cnsigo salir de el, aver si conseguiis ayudarme:

Código PHP:
<?
        $select_visitas 
M_Query("SELECT max(visitas), cat FROM visitasdb");
        
$visitass mysql_query($select_visitas,$conect);
while(
$visitas mysql_fetch_array($visitass)) {  
        
        
$nombre $visitas["cat"];
        
$v $visitas["visitas"];
        
        
$_titulo .= 'Juego Mas Jugado';
        
$_cont_visitas .= "$nombre Es el juego mas jugado.<br> Jugado un total de: <b>$v</b> Veces";
        
$_visitas .= tabla_cont("$_titulo"$_cont_visitas);
        
        echo 
$_visitas;
        }
        
?>
El error es el siguiente:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home2/comand/public_html/block/max.php on line 4


y esta es la linea
while($visitas = mysql_fetch_array($visitass)) {
  #2 (permalink)  
Antiguo 13/03/2008, 15:55
Avatar de ranceis  
Fecha de Ingreso: septiembre-2006
Mensajes: 42
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: error al mostrar max

pusiste bien tu codigo, seria mejor asi.

$select_visitas = mysql_query("SELECT max(visitas), cat FROM visitasdb");

while($visitas = mysql_fetch_array($select_visitas )) {

$nombre = $visitas["cat"];
$v = $visitas["visitas"];

$_titulo .= 'Juego Mas Jugado';
$_cont_visitas .= "$nombre Es el juego mas jugado.<br> Jugado un total de: <b>$v</b> Veces";
$_visitas .= tabla_cont("$_titulo", $_cont_visitas);

echo $_visitas;
}
  #3 (permalink)  
Antiguo 13/03/2008, 16:03
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: error al mostrar max

me sigue saliendo el mismo error :(
  #4 (permalink)  
Antiguo 13/03/2008, 16:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: error al mostrar max

Prueba así tu código:
Código PHP:
        $select_visitas "SELECT max(visitas), cat FROM visitasdb";
        
$visitass mysql_query($select_visitas,$conect) or die( "error en query: $select_visitas, error: " mysql_error() ); 
Saludos.
  #5 (permalink)  
Antiguo 13/03/2008, 16:40
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: error al mostrar max

error en query: SELECT max(visitas), cat FROM visitasdb, error: Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause

Que significa?
  #6 (permalink)  
Antiguo 13/03/2008, 16:44
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: error al mostrar max

Tu query esta mal, prueba esta Query:
Código:
SELECT MAX(visitas), cat, FROM visitasdb GROUP BY cat
Saludos.
  #7 (permalink)  
Antiguo 13/03/2008, 16:59
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: error al mostrar max

ahora me da otro error

error en query: SELECT MAX(visitas), cat, FROM visitasdb GROUP BY cat, error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM visitasdb GROUP BY cat' at line 1
  #8 (permalink)  
Antiguo 13/03/2008, 17:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: error al mostrar max

Hay una coma de mas después de cat.

Saludos.
  #9 (permalink)  
Antiguo 13/03/2008, 17:25
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: error al mostrar max

Muchas gracias, ya no me da error, aora me muestra los mensajes pero las variables no me las coje, no me muestra nada, voy a investigar.
1 saludo
  #10 (permalink)  
Antiguo 13/03/2008, 18:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: error al mostrar max

Necesitas usar:
Código PHP:
$v visitas['MAX(visitas)']; 
Saludos.
  #11 (permalink)  
Antiguo 14/03/2008, 05:48
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: error al mostrar max

Lo siento si soy pesado, pero nada

el codigo esta de esta manera

Código PHP:
<?
include 'config.inc.php';
 
$select_visitas "SELECT MAX(visitas), cat FROM visitasdb GROUP BY cat";
        
$visitass mysql_query($select_visitas,$conect) or die( "error en query: $select_visitas, error: " mysql_error() ); 

$nombre $visitass["cat"];
$v $visitas['MAX(visitas)']; 

$_titulo .= 'Juego Mas Jugado';
$_cont_visitas .= "$nombre Es el juego mas jugado.<br> Jugado un total de: <b>$v</b> Veces";
$_visitas .= tabla_cont("$_titulo"$_cont_visitas);

echo 
$_visitas;

        
?>
y me devuelve:
Código PHP:
Es el juego mas jugado.
Jugado un total deVeces 
E revisado que se conecte bien y los datos estan bien
  #12 (permalink)  
Antiguo 14/03/2008, 08:38
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Re: error al mostrar max

Debes de asociar tu query a un array para poder trabajar con los valores que te devuelve la consulta, Prueba así tu código:

Código PHP:
<?include ('config.inc.php'); 
$select_visitas "SELECT MAX(visitas) AS nvisitas, cat FROM visitasdb GROUP BY cat"
$visitass mysql_query($select_visitas,$conect) or die( "error en query: $select_visitas, error: " mysql_error() );  
$datos mysql_fetch_array($visitass);

$nombre $datos['cat']; 
$visitas $datos['nvisitas'];  

$_titulo .= 'Juego Mas Jugado'
$_cont_visitas .= "$nombre Es el juego mas jugado.<br> Jugado un total de: <b>$visitas</b> Veces"
$_visitas .= tabla_cont("$_titulo"$_cont_visitas); 

echo 
$_visitas
?>
Saludos.

Última edición por Carlojas; 14/03/2008 a las 15:51
  #13 (permalink)  
Antiguo 14/03/2008, 09:23
 
Fecha de Ingreso: enero-2007
Mensajes: 79
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: error al mostrar max

Muchas gracias GatorV y Carlojas, ya me funciona a la perfeccion.

Un saludo
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 03:15.