Hola, gente

Perdón por el off-topic, esto tiene que ver con javascript y php, no con 
css.

Veréis, quiero meter la resolución de pantalla del usuario en una base 
de datos de estadísticas. Para sacar la resolución recargo la página con 
js y paso al documento los valores por POST. Hasta aquí fácil. Lo 
complicado es que funcione tanto para quienes tienen soporte para js 
como para los que no lo tienen .

Con el siguiente código siempre se me almacena "n/a" (no aplicable).
- Si el usuario no tiene js, el código javascript no se ejecuta y se 
almacena "n/a" (esto lo hace bien).
- Si el usuario tiene js, después del submit() el documento se sigue 
ejecutando y llega hasta la parte de almacenamiento en bd. Cuando se 
refresca la página tengo dos entradas en la tabla correspondiente: una 
con "n/a" y otra con la resolución. ¿Veis la manera de que después del 
submit() la página no se siga ejecutando?


<?php
/*
 * Obtenemos a través de JavaScript la resolución de  pantalla.
 * Si el usuario no tiene JavaScript, la resolución será "n/a".
 */
if (! $_POST) {
?>
<script type="text/javascript">
//<![CDATA[
    $(document).ready(function (e) {
        $("#ancho").val(screen.width);
        $("#alto").val(screen.height);
        $("#frmResolucion").submit();
    });
//]]>
</script>
<?php
    $resolucion = "n/a";
} else {
    $resolucion = $_POST['ancho'] . "x" . $_POST['alto'];
}
?>

<form id="frmResolucion" action="<?php echo $_SERVER['PHP_SELF']; ?>" 
method="post">
<div>
<input id="ancho" name="ancho" type="hidden" />
<input id="alto" name="alto" type="hidden" />
</div>
</form>

[Almacenamiento en bd]
_______________________________________________
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