Foros del Web » Programando para Internet » PHP »

Contador de Visitas Especial

Estas en el tema de Contador de Visitas Especial en el foro de PHP en Foros del Web. Hola, he estado buscando algunos ejemplos y codigos en el web y no he podido encontrar algo que me sirva, espero ustedes me puedan ayudar. ...
  #1 (permalink)  
Antiguo 15/02/2006, 17:50
Avatar de Ciberdanny  
Fecha de Ingreso: marzo-2005
Ubicación: Distrito Federal
Mensajes: 204
Antigüedad: 12 años, 8 meses
Puntos: 1
Pregunta Contador de Visitas Especial

Hola, he estado buscando algunos ejemplos y codigos en el web y no he podido encontrar algo que me sirva, espero ustedes me puedan ayudar.

Tengo una web donde hay una seccion de miembros, nada sofisticado, solo una DB donde estan "nombre de usuario" y "password" de cada uno para entrar y mediante un formulario se autentifican y pueden acceder, hace poco logre hacer que las paginas protegidas dieran la bienvenida al usuario autentificado mediante una cookie y todo va bien, el caso es que ahora lo que quiero saber es como puedo hacer para que en alguna parte de alguna DB se guarden las visitas de cada miembro, es decir, solo quiero ir teniendo una relacion de los miembros que han visitado la seccion por su nombre de usuario, no quiero estadisticas avanzadas, solo saber quien ha entrado con su nombre de usuario y " cuantas veces, aunque solo me conformaria por el momento con saber de todos mis miembros quien ha visitado la sección.

Estoy usando el siguiente codigo: (encontrado en http://www.desarrolloweb.com/manuales/37/)

<?
//conecto con la base de datos
$conn = mysql_connect("servidor","usuario","password");
//selecciono la BBDD
mysql_select_db("nombre_bbdd",$conn);

//Sentencia SQL para buscar un usuario con esos datos
$ssql = "SELECT * FROM usuario WHERE nombre_usuario='$usuario' and clave_usuario='$contrasena'";

//Ejecuto la sentencia
$rs = mysql_query($ssql,$conn);

//vemos si el usuario y contraseña es váildo
//si la ejecución de la sentencia SQL nos da algún resultado
//es que si que existe esa conbinación usuario/contraseña
if (mysql_num_rows($rs)!=0){
//usuario y contraseña válidos
//defino una sesion y guardo datos
session_start();
session_register("autentificado");
$autentificado = "SI";
header ("Location: aplicacion.php");
}else {
//si no existe le mando otra vez a la portada
header("Location: index.php?errorusuario=si");
}
mysql_free_result($rs);
mysql_close($conn);
?>


Quiero saber si en la parte de este codigo donde identifica al usuario se puede agregar algo para que en caso de que si exista el password y usuario sume +1 en algun campo. ¿se puede? ¿o de que otra forma podria hacerlo?

Me podrian ayudar con algun ejemplo o una idea que me sirva porfa?

Gracias de antemano.

Última edición por Ciberdanny; 15/02/2006 a las 18:13
  #2 (permalink)  
Antiguo 15/02/2006, 18:38
 
Fecha de Ingreso: agosto-2005
Ubicación: Argentina, Capital Federal
Mensajes: 435
Antigüedad: 12 años, 3 meses
Puntos: 2
Un par de cosas. EL uso de session_register() es obsoleto, ten cuidado con algunos manuales de desarrollo web que nunca han actualizado. En tu caso podrías reemplazarlo por:

Código PHP:
session_start();
$_SESSION["autentificado"]="SI";
// Luego página tras página accedes a tu variable asi: echo $_SESSION["autentificado"]; 
De este modo con el array superglobal $_SESSION no dependes del estado de register_globals ya que si esta opción del php.ini está deshabilitada, no podrás recibir tus variables de un script a otro sin usar $_SESSION.

En cuanto a tu pregunta, en la DB podrías definir un campo "visitas" en el cual cada vez que un usuario es identificado correctamente se haría:

Código PHP:
mysql_query("UPDATE usuario SET visitas=visitas+1 WHERE nombre_usuario='$usuario'"); 
De este modo estarías sumando uno al campo "visitas" de cada usuario en particular.

Saludos.

PD: ignora el BEGIN__VBULLETIN__CODE__SNIPPET si lo ves
__________________
R4DS en español | R4DS en inglés
  #3 (permalink)  
Antiguo 15/02/2006, 20:37
Avatar de Ciberdanny  
Fecha de Ingreso: marzo-2005
Ubicación: Distrito Federal
Mensajes: 204
Antigüedad: 12 años, 8 meses
Puntos: 1
De acuerdo Okokokok

Perfecto!!!

Quedo perfecto el sistema de contador de visitas de esta forma, muchas gracias por tu ayuda ya me estaba desesperando el no poder encontrar quien me ayudara cxon esto.


Gracias de nuevo y Saludos!!!
  #4 (permalink)  
Antiguo 15/02/2006, 22:31
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 13 años
Puntos: 1
como sugerencia

Aunque por ahora estás conforme con el resultado, como sugerencia para cuando quieras tener más detalles y sin demasiada complicación, podrías hacer una nueva tabla llamada: visitas.

De hecho, un campo de visitas debería, según una buena normalización de base de datos, estar en una entidad separada. Esa tabla estaría conformada con las siguientes columnas:

TABLA: VISITAS

  • tabla_id
  • fecha_de_visita
  • visitante_id
Al momento que alguien se registra, en lugar de actualizar (como lo haces ahorita) una columna, podrías sólo insertar en la tabla VISITAS la fecha y el ID de tu usuario.

Sólo con hacer esto, podrías saber:
  • Cantidad de visitas de tu web.
  • Cantidad de visitas por usuario.
  • Saber cuántas veces te ha visitado un usuario en un periodo de tiempo (hoy, la última semana, el último mes, etc.)
  • Saber cuántas visitas totales has tenido (hoy, la última semana, el último mes, etc.)
  • Saber cuándo fue que se registró cierto usuario.
Como vez, es información valiosa sobre todo para andar viendo qué tal anda tu web con respecto al posicionamiento web y estadísticas interesantes simples.
__________________
"Di no al Internet Explorer" -Proverbio Chino-
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 23:46.