[Ovillo] [OT] almacenar resolución de pantalla en base de datos (¡SOLUCIONADO!)
Rodrigo Álvarez Virgós
rodri.virgos en gmail.com
Vie Oct 5 11:49:50 UTC 2007
Hola, Ovillo
Os pongo aquí mi solución por si a alguien más le resulta útil. Supongo
que habrá otras formas más elegantes, pero a mí ésta me sirve :-P
0.- En el esquema de la base de datos, poner n/a como valor predeterminado.
1.- Para generar una visita, hacer un "insert" en la bd para todos los
campos (ip, fecha, etc) excepto para la resolución (se inserta "n/a" por
omisión.
2.- Comprobar si llega la resolución por POST.
2a.- Si llega, hacer un "update" en la base de datos para el anterior
"insert".
2b.- Si no llega, recargar con js el navegador con la resolución.
De esta manera,
- Si el cliente tiene js: se realizan los pasos 1, 2b, 1 y 2a. Se
ejecuta dos veces el paso 1, pero al tener (en mi caso) la ip y la fecha
como clave primaria, no se inserta el registro por duplicado, pero sí se
actualiza con los datos de la resolución.
- Si el cliente no tiene js: se realizan los pasos 1 y 2b. Al no tener
js, no se realiza la redirección y el registro queda insertado con "n/a"
como valor de la resolución en el registo correspondiente.
Más información sobre la lista de distribución Ovillo