domingo, 11 de mayo de 2014

Aprende como pasar la resolución de JavaScript a PHP




En esta ocasión le mostraremos como podrá pasar la resolución de JavaScript a PHP.

Todos sabemos que el lenguaje PHP, al ser del lado del servidor, no puede tomar nuestra resolución. Pues, hay una forma sencilla de pasar las medidas de JavaScript a PHP con un solo click!

Para setear una cookie con JavaScript, el comando es el siguiente:

document.cookie = ‘NOMBRE=VALOR; expires=FECHA; path=CAMINO; domain=DOMINIO; SECURE’;

Teniendo esto en cuenta, lo que haremos será un script, mezcla de PHP y JavaScript. Consistirá en dos archivos: mostrar.php y getres.php .

El código es el siguiente:

<?

/******************************************

JavaScript to PHP Screen Resolution vBETA

by Lenn García

Date: 08-29-2004

******************************************/

?>

<script language=”javascript”>

function SetCookie() {

var width = screen.width;

var height = screen.height;

var res = width + ‘x’ + height;

document.cookie = ‘PHPRes=’+res;

location = ‘<?=$GLOBALS['siteurl'];?>’;

}

function CheckResolution(width, height) {

if(width != screen.width && height != screen.height) {

SetCookie();

}

}

</script>

<?

if(isset($_COOKIE['PHPRes']) || !empty($_COOKIE['PHPRes'])) {

$res = explode(“x”,$_COOKIE['PHPRes']);

$width = $res[0];

$height = $res[1];

?>

<script language=”javascript”>

CheckResolution(<?=$width;?>,<?=$height;?>);

</script>

<?

} else {

?>

<script language=”javascript”>

SetCookie();

</script>

<?

}

?>

Lo que hacemos con este código es lo siguiente:
En la función JavaScript SetCookie definimos dos variables con el ancho y el alto de la resolución, y lo colocamos en un string de valor anchoxalto .
Seteamos la cookie de nombre PHPRes con el valor mencionado anteriormente, y refrescamos la página.
Luego, en la función JavaScript CheckResolution comparamos los valores actuales de la resolución y los invocados como parámetros en la función. Si no son iguales, se crea la cookie con los datos actualizados.
Pasando a PHP, se verifica la existencia de la cookie PHPRes , y si la misma existe, se separan los valores numéricos de la x .
Los valores de ancho y alto se llaman en la función JavaScript CheckResolution , que verificará si todo está actualizado correctamente.
Si la cookie no existe, se la creará.

El archivo desde el que se llama al script debe cumplir ciertos requisitos:


Antes de invocar al archivo getres.php debe definir una variable $GLOBALS con la dirección de la página original ($_SERVER['REQUEST_URI']).

La página original ( mostrar.php ) sería así:

<?

$siteurl = $_SERVER['REQUEST_URI'];

$GLOBALS['siteurl'] = $siteurl;

require(‘getres.php’);

echo $width.’x’.$height;

?>

Lo que hace el código es tomar la dirección desde el dominio principal (pero sin él), y luego convertirla en variable super-global. Pide el archivo getres.php , y luego se muestran las variables.

Recuerda que debes tener habilitadas las cookies, en tu navegador, para poder utilizar este método.


Fuente:enlace

Si quieres seguir aprendiendo con nosotros, puedes ingresar a nuestros cursos de Programación  visita www.uneweb.com para más información.

No hay comentarios:

Publicar un comentario

Entradas populares