2010-11-14 12 views
18

Duplicar posibles:
Getting the screen resolution using PHPcómo obtener una resolución de pantalla del usuario con PHP

bien la cuestión se explica por sí

donde quiero llegar es

$width = ; //user screen width in here 

F1! F1!

+0

Aunque no se puede detectar estrictamente la resolución del entorno del usuario, pero en función de la cadena del agente de usuario, puede adivinar con precisión razonable la clase (móvil/tableta/computadora de escritorio) del dispositivo utilizado. Consulte http://mobiledetect.net/. – bds

Respuesta

40

Necesita JavaScript, no PHP.

var screenWidth = window.screen.width, 
    screenHeight = window.screen.height; 

A continuación, puede enviarlo al servidor a través de Ajax (con un XmlHttpRequest).

Vea también MDC window.screen docs.

+0

¿puedes compartir un código de muestra para enviarlo a la variable php a través de AJAX? – Faizan

9

No puede, no en php. PHP es estrictamente del lado del servidor.

+4

geez ... ¿por qué me olvido de este hecho ... – Moon

+1

HI, lo entiendo. Pero información como tipo de navegador, proveedor e idiomas preferidos, etc. a los que podemos acceder desde la variable '$ _SERVER'. Por ejemplo: '$ _SERVER ['HTTP_ACCEPT_LANGUAGE']' como este para el lenguaje. A pesar de que es el lenguaje del lado del servidor y la ejecución, todavía podemos obtener información como esta del cliente. Me pregunto si el tamaño de la pantalla también debería proporcionarse, pero sé que no está en la generación actual. En el futuro pueden agregar. @ Femaref – sun

+0

Esos son encabezados http. Http se utiliza para acceder a páginas web, pero eso no es lo único que hace. Es un estándar para la transmisión de datos; por lo tanto, las cosas como el espacio de la pantalla (que es motivo de preocupación después de que los datos lleguen al cliente son cosméticos) no tienen cabida en el estándar http. – Femaref

5

no lo puede obtener del lado del servidor, tiene que obtenerlo del lado del cliente con javascript con innerWidth. puede pasarlo al lado del servidor con AJAX si lo necesita.

+0

¿por qué es negativo? es tan relevante como la respuesta aceptada, y respondí antes que Matt. –

+3

bien, entonces innerWidth no funciona en IE hasta IE9. se olvidó de eso. Tomaré mi voto y me callaré ahora. –

2

Puede usar JavaScript. Obtenga la pantalla del usuario, envíela al servidor y obténgala por php.

+0

puede publicar una muestra de cómo enviar datos al archivo php del servidor a través de ajax? " – Faizan

Cuestiones relacionadas