PHP - Détecter la résolution d'affichage

PHP ne fournit pas de fonction permettant la détection de la résolution d'affichage car l'information concernant l'affichage du visiteur n'est pas fournie nativement par le protocole HTTP.

Javascript par contre permet de détecter la résolution grâce aux attributs width et height de l'objet screen :

screen.width
screen.height


Ainsi le code suivant, une fois inséré dans un document HTML, affiche la résolution d'affichage du visiteur :

<script language="Javascript">
<!--
document.write('<br>Votre résolution est de '.screen.width+'x'+screen.height)
//-->
</script>


Ainsi, il est possible de passer le paramètre à un script PHP par l'intermédiaire d'une redirection en Javascript.

 <?
if(!isset($_GET['r']))
{
echo "<script language=\"JavaScript\">
<!-- 
document.location=\"$PHP_SELF?r=1&Largeur=\"+screen.width+\"&Hauteur=\"+screen.height;
//-->
</script>";
}
else {    

// Code à afficher en cas de détection de la résolution d'affichage
     if(isset($_GET['Largeur']) && isset($_GET['Hauteur'])) {
               // Résolution détectée
     }
     else {
               // Résolution non détectée
     }
}

?>


Note :
Si vous êtes puriste, préférez le terme "définition" au mot "résolution" :
http://www.commentcamarche.net/pc/ecran.php3#caracteristique
Publié par Jeff - Dernière mise à jour le 22 novembre 2009 à 16:24 par marlalapocket
Ce document intitulé « PHP - Détecter la résolution d'affichage » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Suggestions
  •  PHP - Détecter la résolution d'affichage
  •  PHP - Rediriger en fonction de la langue du visiteur » Fiches pratiques : Beaucoup de sites demandent à ce que l'on choisisse la langue en cliquant sur une icône correspondant au pays. Il est possible de détecter la langue par défaut du visiteur grâce aux informations fournies par son navigateur (langues acceptées :...
  •  Comment régler la résolution écran (Résolu) » Meilleure réponse: Télécharge les pilotes mis à jour de ta carte vidéo depuis le site du constructeur de la carte. Les PC achetés avec vista, sont configuré comme de la m***e et j'ai déjà rencontré ce problème: image floue, impossible d'obtenir les bonnes
  •  Comment récupérer l'url d'une page php ? (Résolu) » Meilleure réponse: Si tu es en PHP : <? $monUrl = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; ?> Référencement naturel avec http://www.rhinostone.com http://www.rhinostone.com/fra/referencement/referencement-naturel.html
  •  Alerte spyware (Résolu) » Bonjour, J'ai un message d'alerte en anglais me demandant de télécharger un antispyware (viruheat) Je ne parviens pas à m'en débarrasser. Si qqn connait la solution merci de m'aider. Merci d'avance.
  •  [Java] détection encoding (utf-8) (Résolu) » Meilleure réponse: Re, Un petit lien sympa qui explique bien les problèmes d'encodage : http://www.developpez.net/forums/sho...light=encodage Ca n'a pas permit de solutionner mon problème puisque mon bug (plus d'actualité) venait d'ailleurs, mais j'ai tro
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?
PHP - Liens utiles
PHP - Date de dernière modification