Foros del Web » Programando para Internet » PHP »

Supongo que es algo fácil ;)

Estas en el tema de Supongo que es algo fácil ;) en el foro de PHP en Foros del Web. Hola, queria hacer una especie de contador... Pero no un contador de visitas, o si, bueno, mejor me explico ;). Tengo una página que muestra ...
  #1 (permalink)  
Antiguo 03/12/2002, 13:27
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Supongo que es algo fácil ;)

Hola, queria hacer una especie de contador...
Pero no un contador de visitas, o si, bueno, mejor me explico ;).

Tengo una página que muestra perfiles de usuarios desde una base de datos, lo que queria hacer, es mostrar las visitas que ha tenido ese perfil.
Supongo que seria crear un campo nuevo en la base de datos con un autoincrement de esos, y en la página poner que aumento en 1 el valor de ese campo.

Mi pregunta, ovbiamente, es, como se hace?

PD: Agradeceria no solo poner un código a secas, si no una pequeña expplicación tmb para saber lo que hago ;).
Muxas gracias y un saludo.
__________________
(:
  #2 (permalink)  
Antiguo 03/12/2002, 13:48
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pues.. tu mismo lo has dicho ..

Empieza por crear un campo extra a tu base de datos de perfil (tabla) que tienes ...

No es necesario (y no será posible si ya tienes un campo autoincremental tal vez ..) que uses ese tipo de campo autoincremental ..

Se trata de hacer cuando hagas tu tipico "SELECT * FROM perfiles WHERE usuario='$usuario'" ... (es decir .. la consulta al propio perfil del usuario .. a continución hagas otra consulta .. en este caso será un UPDATE al campo "visitas" q vas a crear en tu tabla de perfil .. Este update se puede incrementar en una (o varias unidades) ahi mismo sobre la consulta SQL:
Código PHP:
$sql="UPDATE perfiles SET visitas=visitas+1";
mysql_query($sql); 
Por la misma técnica .. puedes actualizar mas campos si los creas .. como por ejemplo uno timo Fecha (DATETIME por ejemplo) en el que actualices tambien ademas del contador .. la fecha de la ultima visita a cierto perfil ...

Como veras .. las posibilidades son infinitas .. solo es saber ejecutar las consultas SQL pertinentes ... Te recomiendo que leas el manual de Mysql (www.mysql.com/doc) y veras la de cosas que puedes hacer si manejas bien SQL ..).

Un saludo,
  #3 (permalink)  
Antiguo 03/12/2002, 14:12
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Gracias Cluster. Funciona perfectamente ;)
Y además adivinaste lo que no te dije, ya tenia un autoincrement :P

Muchas gracias otra vez ;).
__________________
(:
  #4 (permalink)  
Antiguo 03/12/2002, 14:19
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
jajaja me alegro q te funcione .. ahora ya se q si me despiden del trabajo .. me monton una linea de esas de Tarot en vivo o algo asi de kiromancia jajajaja

Un saludo,
  #5 (permalink)  
Antiguo 03/12/2002, 14:37
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Uy!!
Casi casi...

Lo que ahora pasa, es que le cambian las visitas a todos.. xDD
He intentao solucionarlo por mi mismo, pero parece que tengo que volver a preguntar al tarot..
__________________
(:
  #6 (permalink)  
Antiguo 03/12/2002, 14:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Ops! jejeje .. se me olvidó la clausula WHERE xDD

Código PHP:
$sql="UPDATE perfiles SET visitas=visitas+1 WHERE usuario='$usuario'";
mysql_query($sql); 
Ya ta xD;

Un saludo,
  #7 (permalink)  
Antiguo 03/12/2002, 14:53
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Ahora si está perfecto.

Gracias Cluster, t sales
__________________
(:
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 09:06.