Hola, Óscar Linares, Tincho, Tei, Edu G y DJ-Dom

> No lo entiendo, pero hacer dos operaciones de BBDD para registrar la
> resolución de un usuario no creo que sea lo más correcto.

Coincido, pero no he encontrado otra solución que también funcione de 
manera accesible (es decir, para usuarios con y sin javascript). Por eso 
pido que alguien me brinde una alternativa...


> Disculpen la intromision, pero yo uso google analytics y me brinda esa 
> info sobre las resoluciones y mucho mas, porque no utilizas ese servicio?

Google Analytics está de puta madre (con perdón), para qué lo vamos a 
negar. También está genial el Awstats [1] que nos brinda nuestro 
servidor, pero ninguna de las dos me sirve. Toda la información que 
estoy recopilando (plataforma, sistema operativo, resolución de 
pantalla, fecha y hora, etc etc) es información que queremos proveer a 
nuestros clientes de manera gratuita, con nuestra propia interfaz de 
usuario y sólo con los datos que nos interesa que sepan (no se trata de 
ocultar información, sino de no atosigar al cliente millones de datos 
que no sabe leer).

En pocas palabras, a nosotros nos interesa saber las resoluciones y los 
navegadores de cara a futuros diseños, y al cliente le interesa saber a 
qué hora se visita más su web, saber cuántas visitas tiene a la semana, 
etc. Se trata de regalar un servicio que dé una buena imagen y que 
resulte útil, y lógicamente desarrollado por nosotros.

[1] http://awstats.sourceforge.net/

> De todos modos cualquier calculo que use IP's para identificar
> usuarios debe tener en cuenta que millones de usuarios comparten la
> misma ip a traves de proxy's, routers de lan's, etc.

Díselo a los de Rapidshare, por ejemplo ^^ Tienes razón, pero no me voy 
a romper los cuernos detectando proxies. Se trata de obtener 
estadísticas generales,no estoy desarrollando un log de la policía jeje.

> para almacenar la resolución de pantalla en una base de datos hay que
> hacer un fantástico script. dónde lo pongas, ya no lo tengo tan claro
> si queremos evitar consultas inecesarias  a la base de datos.
>
> con javascript capturamos ancho y alto, o lo que se pueda (no sé
> prácticamente nada de js).
> [...]

Claro, sin saber javascript parece un problema muy fácil. Tengo la 
impresión de que me estás dando la misma solución que propuse yo al 
principio ^^ , pero mi problema no viene en cómo insertar la resolución 
en la base de datos, sino en cómo hacer que el navegador sólo se 
recargue cuando tiene js activado, y en caso de recargarse: cómo hacer 
que sólo se realice una operación en la bd.
> para evitar que cada vez que se entra en una página se hagan consultas
> a la bdd, quzás sería útil enviar una cookie que nos diga si ya se le
> ha preguntado a ese visitante su resolución de pantalla. es mucho más
> barato esto que mirarlo en la bdd. si se hace esto, no creo que sea
> necesario mirar la IP.

No hago ninguna comprobación de ip's. (if (ip ya registrada) {...} else 
{...}). Inserto sin más en la base de datos, y si existe violación de 
clave primaria, entonces lógicamente no se graba el registro 
correspondiente. Y esto es más rápido que escribir o leer una cookie, ya 
que la cookie supone escrituras y lecturas de fichero en la máquina del 
cliente, y el "insert" se hace en el servidor.

> [...]
>
> Existen otras más sencillas, puedes escribir la resolución en una 
> cookie con
> JavaScript y recogerla con PHP y de ahí ya la guardas en tu BD...

Creo que has dado en el clavo. Si la cookie no existe, quiere decir que 
no tienes js activado, y funcionaría para todo el mundo, sin necesidad 
de revargar el navegador :-D Lo intentaré, muchas gracias.
_______________________________________________
Lista de distribución Ovillo
Para escribir a la lista, envia un correo a [email protected]
Puedes modificar tus datos o desuscribirte en la siguiente dirección: 
http://lists.ovillo.org/mailman/listinfo/ovillo

Responder a