Ver Mensaje Individual
  #8 (permalink)  
Antiguo 13/03/2012, 21:08
tonydx16
 
Fecha de Ingreso: febrero-2011
Mensajes: 233
Antigüedad: 13 años, 10 meses
Puntos: 4
Respuesta: Mostrar registro más visitado

Cita:
Iniciado por xxxivanxxx Ver Mensaje
Código MySQL:
Ver original
  1. SELECT *,CONCAT((SELECT COUNT(url) FROM visitas WHERE url='$url' , categoria='$categoria')) as visitas FROM visitas WHERE url='$url', categoria='$categoria' ORDER BY visitas DESC LIMIT 0,5
Estoy casi seguro que la consulta que te di anteriormente deberia haberte funcionado, por que lo que esta haciendo es mostrarte solo 5 registros con una columna adicional que viene a ser el numero de visitas de cada "url" y ordenadas decendientemente que es justo lo que necesitas... ¿? lo has probado¿? ¿que resultados te muestra?
El código que me dice no sale...

Código MySQL:
Ver original
  1. SELECT *,CONCAT((SELECT COUNT(url) FROM visitas WHERE url='$url' , categoria='$categoria')) as visitas FROM visitas WHERE url='$url', categoria='$categoria' ORDER BY visitas DESC LIMIT 0,5

esta parte:

Código MySQL:
Ver original
  1. (SELECT COUNT(url) FROM visitas WHERE url='$url' , categoria='$categoria')

aquí me cuenta todos los registros donde tenga la misma url de la página... osea con esto muestro el número de visitas de la página en la que estoy..

lo siquiente es:

Código MySQL:
Ver original
  1. SELECT *,CONCAT(....) as visitas FROM visitas WHERE url='$url', categoria='$categoria' ORDER BY visitas DESC LIMIT 0,5

aquí es lo mismo...

como dije tengo dos tablas:

contenido
visitas



EN visitas almaceno las url cada vez que alguien ingresa a la página (obviamente verificando que no sea la misma IP).. lo almacena así más o menos...


ip------------url-----------categoria--------id

15151 -----pagina-web---------demo-------------1
26565 -----pagina-web-----------demo------------2
454554 -----otra-pagina-web-----demo-------------3


lo quiero que es mostrar los 5 registros que más haya...osea los más visitados...

Última edición por tonydx16; 13/03/2012 a las 21:18