Foros del Web » Programando para Internet » PHP »

Como hacer un contador de Visitas en PHP!?

Estas en el tema de Como hacer un contador de Visitas en PHP!? en el foro de PHP en Foros del Web. Hola amigos de foros del web, estoy haciendo una página de clasificados y quería proporcionarle a los usuarios estadisticas de sus anuncios. Pero la verdad ...
  #1 (permalink)  
Antiguo 10/01/2011, 12:35
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 11 meses
Puntos: 10
Pregunta Como hacer un contador de Visitas en PHP!?

Hola amigos de foros del web, estoy haciendo una página de clasificados y quería proporcionarle a los usuarios estadisticas de sus anuncios.

Pero la verdad no tengo ni la menor idea de como hacerlo, no se con que función podría proporcionarle a los usuarios los siguiente:

Cuantos usuarios unicos vieron el articulo.
Cuantos hits le dieron al articulo.


Y pues ya con esa información podría decirles cuantas visitas tuvieron semanal y mensualmente.

Alguno de ustedes sabe con que funciónes hacerlo y donde podría conseguirlas?

Saludos y Gracias de antemano!
  #2 (permalink)  
Antiguo 10/01/2011, 13:44
Avatar de zeuslife  
Fecha de Ingreso: enero-2008
Ubicación: Madrid
Mensajes: 533
Antigüedad: 16 años, 10 meses
Puntos: 11
Respuesta: Como hacer un contador de Visitas en PHP!?

Tienes varias posibilidades. Cada vez que entra un usuario por primera vez, almacenas su ip, y el id del artículo visitado (al cual también le añades una visita). Pero si ese usuario ya lo habia visitado, por lo que su ip ya se encuentra en la db, no sumas la visita.
Las ips deberás limpiarlas cada X tiempo ya que estas varían.

Pero, de todas formas, otra opción bastante viable sería la de usar cookies, haciendo que cada vez que un usuario visite X articulo, cree una cookie en el pc del usuario. Eso si, si visitan muchos, sería a lo mejor mucha cookie para cada usuario.

Pero bueno, eso es sopesar cada opción a ver cual te gusta más y te viene mejor, y las dos funcionarian.

Saludos!
__________________
Neversyn Software e Ingeniería
  #3 (permalink)  
Antiguo 10/01/2011, 14:01
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 11 meses
Puntos: 10
De acuerdo Respuesta: Como hacer un contador de Visitas en PHP!?

Cita:
Iniciado por zeuslife Ver Mensaje
Tienes varias posibilidades. Cada vez que entra un usuario por primera vez, almacenas su ip, y el id del artículo visitado (al cual también le añades una visita). Pero si ese usuario ya lo habia visitado, por lo que su ip ya se encuentra en la db, no sumas la visita.
Las ips deberás limpiarlas cada X tiempo ya que estas varían.

Pero, de todas formas, otra opción bastante viable sería la de usar cookies, haciendo que cada vez que un usuario visite X articulo, cree una cookie en el pc del usuario. Eso si, si visitan muchos, sería a lo mejor mucha cookie para cada usuario.

Pero bueno, eso es sopesar cada opción a ver cual te gusta más y te viene mejor, y las dos funcionarian.

Saludos!
Hola y muchas gracias por tu respuesta eso de registrar ip's suena bastante bien tratare de hacerlo de esa manera.

Saludos!
  #4 (permalink)  
Antiguo 10/01/2011, 14:33
 
Fecha de Ingreso: septiembre-2008
Ubicación: Valencia
Mensajes: 160
Antigüedad: 16 años, 2 meses
Puntos: 2
Respuesta: Como hacer un contador de Visitas en PHP!?

Si tienes una base de datos es facil...

Poners un campo que sea Id o Visita que sea autoincrementable... y
para la Ip hay un funcion que es:
Código PHP:
$ipgetenv('REMOTE_ADDR'
lo puedes guardar con la variable que quieras...

luego ya es la conexión a la base de datos y meter los datos:
Código PHP:
$bd_host "Lugas donde este la BD";   
$bd_usuario "Nombre de Admin (Generalemnte Root)";   
$bd_password "La contraseña";   
$bd_base "Nombre de la BD"
$Tabla  "Nombre de la tabla"
$con mysql_connect($bd_host$bd_usuario$bd_password);   
mysql_select_db($bd_base$con);
mysql_query("INSERT INTO $Tabla (Visita o Id, Ip) Values ('','$ip') "$con); 
Creo que esto te baldra, si no te funciona dimelo y vere en que me he equivocado, asi es como lo tengo yo, si lo quieres tener contraseña y demas separado pon require('xxx') para asi protegerte un poco mas de la contraseña y demas eso ya son gustos.

P.D: Lo de auto incrementable es lo que te dice la visita que es...
__________________
Siempre inmerso en nuevos proyectos.

Cuando estoy activo puedes verme en //LiveCoding
  #5 (permalink)  
Antiguo 10/01/2011, 15:04
Avatar de zeuslife  
Fecha de Ingreso: enero-2008
Ubicación: Madrid
Mensajes: 533
Antigüedad: 16 años, 10 meses
Puntos: 11
Respuesta: Como hacer un contador de Visitas en PHP!?

Sinceramente, si ya está preguntando sobre como llevar un control de visitas en una web ya hecha, no creo que necesite saber esos códigos Oracles, pero gracias por apoyar las ideas ;) Y nada, ya nos contarás proxipor!!

Saludos!
__________________
Neversyn Software e Ingeniería
  #6 (permalink)  
Antiguo 10/01/2011, 15:52
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 11 meses
Puntos: 10
De acuerdo Respuesta: Como hacer un contador de Visitas en PHP!?

Cita:
Iniciado por Oracles Ver Mensaje
Si tienes una base de datos es facil...

Poners un campo que sea Id o Visita que sea autoincrementable... y
para la Ip hay un funcion que es:
Código PHP:
$ipgetenv('REMOTE_ADDR'
lo puedes guardar con la variable que quieras...

luego ya es la conexión a la base de datos y meter los datos:
Código PHP:
$bd_host "Lugas donde este la BD";   
$bd_usuario "Nombre de Admin (Generalemnte Root)";   
$bd_password "La contraseña";   
$bd_base "Nombre de la BD"
$Tabla  "Nombre de la tabla"
$con mysql_connect($bd_host$bd_usuario$bd_password);   
mysql_select_db($bd_base$con);
mysql_query("INSERT INTO $Tabla (Visita o Id, Ip) Values ('','$ip') "$con); 
Creo que esto te baldra, si no te funciona dimelo y vere en que me he equivocado, asi es como lo tengo yo, si lo quieres tener contraseña y demas separado pon require('xxx') para asi protegerte un poco mas de la contraseña y demas eso ya son gustos.

P.D: Lo de auto incrementable es lo que te dice la visita que es...
Si muchas gracias por tu respuesta (: efectivamente es con al función REMOTE_ADDR.

Cita:
Iniciado por zeuslife Ver Mensaje
Sinceramente, si ya está preguntando sobre como llevar un control de visitas en una web ya hecha, no creo que necesite saber esos códigos Oracles, pero gracias por apoyar las ideas ;) Y nada, ya nos contarás proxipor!!

Saludos!
Si zeuslife ya logre capturar las ip's y mostrarlas.

Dejaré el código para que los demás usuarios con el mismo problema tengan la solución.
  #7 (permalink)  
Antiguo 10/01/2011, 16:06
Avatar de proxipor  
Fecha de Ingreso: diciembre-2009
Mensajes: 211
Antigüedad: 14 años, 11 meses
Puntos: 10
Respuesta: Como hacer un contador de Visitas en PHP!?

Como dije aquí pongo el código:

contador.php
Código PHP:

<?php

function contadorPHP()
{

 
//Con esto obtendremos la IP del usuario
 
$ip $_SERVER['REMOTE_ADDR']; 

 
//Tambien guarde la fecha para saber que dia visitaron el anuncio
 
$fecha date("j-n-Y"); 
 
$hora date("h:i:s"); 

 
//Ahora comprobamos si algúna ip ya visitó el anuncio anteriormente

$sql1 mysql_query("SELECT * FROM contador WHERE ip = '$ip' ");
 if (
mysql_num_rows($sql1) == 0)
 {
   
$sql "INSERT INTO contador (ip, fecha, hora) VALUES ('$ip','$fecha','$hora')"
   
$res mysql_query($sql) or die("Error al ingresar la ip: ".mysql_error); 
  }

 
//Al final mostramos las visitas de los usuarios
 //Ya aquí ustedes ponen sus condiciones en la consulta.
 
$contador "SELECT COUNT(*) FROM contador";
 
$rsql_query($contador,1);
 
$visitas mysql_result($r,0,0); 
 
// Imprimimos las visitas
 
echo $visitas;

}

?>
index.php
Código PHP:
<?php

//Ahora solo llamamos al función y listo
require('contador.php');
contadorPHP();

?>
Espero les sirva a los futuros usuarios con este problema.

Saludos!

Etiquetas: contador, visitas
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 21:14.