Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

sacar consulta de temas mas visitados

Estas en el tema de sacar consulta de temas mas visitados en el foro de Mysql en Foros del Web. hola, me estoy haciendo una web en php y mysql... donde se crearan temas como aportes.. pero me gustaria sacar al lado derecho una consulta ...
  #1 (permalink)  
Antiguo 13/01/2013, 22:21
Avatar de Dimetrix  
Fecha de Ingreso: diciembre-2012
Ubicación: Venezuela
Mensajes: 13
Antigüedad: 12 años
Puntos: 0
Pregunta sacar consulta de temas mas visitados

hola, me estoy haciendo una web en php y mysql... donde se crearan temas como aportes.. pero me gustaria sacar al lado derecho una consulta de la base de datos los 5 temas mas visitados por los usuarios..

actualmente tengo estas tablas



ID_Post int(11) AUTO_INCREMENT
titulo_Post text
contenido_Post text
categoria_Post int(11)

debo crear una que se llame visitas ?
de ser asi que valores tengo que ponerle y como seria el codigo final de la consulta que quiero ....

de antemano muchas gracias
  #2 (permalink)  
Antiguo 13/01/2013, 23:17
 
Fecha de Ingreso: octubre-2011
Ubicación: USA
Mensajes: 166
Antigüedad: 13 años, 2 meses
Puntos: 19
Respuesta: sacar consulta de temas mas visitados

creo que solo debes agregar un campo mas, que sea el campo donde vas a guardar la cantidad de visitas a determinado post, que lo sumaras y lo actualizaras cada vez que un usuario acceda a un link determinado.
Espero haberme explicado

Saludos
  #3 (permalink)  
Antiguo 14/01/2013, 07:53
 
Fecha de Ingreso: noviembre-2012
Ubicación: Caracas - Venezuela
Mensajes: 116
Antigüedad: 12 años
Puntos: 1
Respuesta: sacar consulta de temas mas visitados

debes agregar un campo mas en la base de datos que lleve la cuenta de los temas, cuando hagan click en el tema que sume en la base de datos la cantidad de click (es decir visitas) que recibe el tema, y despues en la parte superior de la web pones un query llamando a los mas altos en un rango de 5 eso es todo
  #4 (permalink)  
Antiguo 14/01/2013, 11:14
Avatar de djaevi  
Fecha de Ingreso: marzo-2007
Ubicación: Moreno, Buenos Aires
Mensajes: 400
Antigüedad: 17 años, 9 meses
Puntos: 47
Respuesta: sacar consulta de temas mas visitados

Yo particularmente si te recomendaria que crees una tabla que guarde las visitas, mas que nada porque te permite almacenar mas informacion como la fecha de la visita, que usuario lo visito, desde que ip fue visitado en fin tienes muchas mas opciones, y el ranking lo haces creando una vista que agrupe contando es algo bastante sencillo. Ademas creo que tienes mucho menos margen de error a la hora de contar como que le tengo mas fe a eso que a un update por cada vez que se visita tu pagina.

Los campos en si deberias colocar los que te interese guardar a modo de consulta, los unicos imprescindibles serian el id y el id del post

CAMPOS:

id | fechaHora | idVisitante | ipVisitante | idPost

CONSULTA

Código MySQL:
Ver original
  1. CREATE VIEW consultarRanking AS
  2. SELECT COUNT(idPost) AS cant_visitas
  3. GROUP BY idPost
  4. ORDER BY cant_visitas DESC

algo asi seria creo. Despues si usas PHP deberas seleccionar todo de la vista creada x ejemplo:

Código PHP:
Ver original
  1. $conectar = mysql_connect("localhost","root");
  2. mysql_select_db("miBaseDeDatos",$conectar);
  3. $consultar = mysql_query("SELECT * FROM consultarRanking");
  4. while($registros = mysql_fetch_array($consultar)) {
  5. echo $registros["id"] . " - " .  $registros["fechaHora"] . " - " .  $registros["idVisitante"]  . " - " .   $registros["ipVisitante"]  . " - " .   $registros["idPost"] . "<br>";
  6. }

Saludos
  #5 (permalink)  
Antiguo 14/01/2013, 12:38
Avatar de Dimetrix  
Fecha de Ingreso: diciembre-2012
Ubicación: Venezuela
Mensajes: 13
Antigüedad: 12 años
Puntos: 0
Respuesta: sacar consulta de temas mas visitados

Cita:
Iniciado por djaevi Ver Mensaje
Yo particularmente si te recomendaria que crees una tabla que guarde las visitas, mas que nada porque te permite almacenar mas informacion como la fecha de la visita, que usuario lo visito, desde que ip fue visitado en fin tienes muchas mas opciones, y el ranking lo haces creando una vista que agrupe contando es algo bastante sencillo. Ademas creo que tienes mucho menos margen de error a la hora de contar como que le tengo mas fe a eso que a un update por cada vez que se visita tu pagina.

Los campos en si deberias colocar los que te interese guardar a modo de consulta, los unicos imprescindibles serian el id y el id del post

CAMPOS:

id | fechaHora | idVisitante | ipVisitante | idPost

CONSULTA

Código MySQL:
Ver original
  1. CREATE VIEW consultarRanking AS
  2. SELECT COUNT(idPost) AS cant_visitas
  3. GROUP BY idPost
  4. ORDER BY cant_visitas DESC

algo asi seria creo. Despues si usas PHP deberas seleccionar todo de la vista creada x ejemplo:

Código PHP:
Ver original
  1. $conectar = mysql_connect("localhost","root");
  2. mysql_select_db("miBaseDeDatos",$conectar);
  3. $consultar = mysql_query("SELECT * FROM consultarRanking");
  4. while($registros = mysql_fetch_array($consultar)) {
  5. echo $registros["id"] . " - " .  $registros["fechaHora"] . " - " .  $registros["idVisitante"]  . " - " .   $registros["ipVisitante"]  . " - " .   $registros["idPost"] . "<br>";
  6. }

Saludos

amigo, mucha gracias por tu ayuda.. pero disculpame estoy entrando en esto de web con php y mysql.. que valores les pondre a cada "CAMPO" id l idVisita l idPost l FechaHora

normalmente el id seria la key y auto incrementar pero los demas campos que debo ponerle ?

Etiquetas: php, sql, tabla, temas
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 04:03.