Détection résolution écran

toto2525
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 349
Inscription: 20 Sep 2007

Détection résolution écran

Message le Mer Juin 22, 2011 16:43

Salut,

Je souhaite connaitre la résolution d'écran de mes internautes, j'ai lu qu'avec php ce n'était pas possible et qu'il fallait passer par du javascript (screen.height; et screen.width;) et une redirection de l'url pour y arriver. Mais je ne souhaite pas utiliser la redirection d'url pour détecter cette résolution, j'ai donc écrit ce bout de code :
Code: Tout sélectionner
<script type="text/javascript">
<!--
Ecran = screen.height;
if(Ecran<=600){<?php $hauteur_ecran = 500;?>}
if((Ecran>600)&&(Ecran<=800)){<?php $hauteur_ecran = 700;?>}
if(Ecran>800){<?php $hauteur_ecran = 800;?>}
//-->
</script>
<?php echo $hauteur_ecran;>

ça m'affiche "800" alors que mon écran est en 1280x800 pixel, ça devrait m'afficher "700", je pige pas mon erreur :(

Je souhaite pouvoir mettre la résolution (500, 700 ou 800) dans une variable php pour pouvoir l'utiliser plus bas dans mon code php.

Merci pour votre aide.


Marie-Aude
Modérateur
Modérateur
 
Messages: 11881
Inscription: 5 Juin 2006

Re: Détection résolution écran

Message le Mer Juin 22, 2011 16:47

Tu as mis <= 800 donc la deuxième condition est réalisée, et le test s'arrête là
En mettant <800 la deuxième condition ne sera pas réalisée

Dan_A
WRInaute discret
WRInaute discret
 
Messages: 183
Inscription: 21 Déc 2005

Re: Détection résolution écran

Message le Mer Juin 22, 2011 16:55

Il manque quelque chose au code car, normalement, javascript est interprété côté navigateur donc utilisateur et php côté serveur.
Il n'est pas possible d'obtenir une valeur utilisée plus bas!

toto2525
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 349
Inscription: 20 Sep 2007

Re: Détection résolution écran

Message le Mer Juin 22, 2011 16:58

Merci pour vos réponses.

Marie-Aude a écrit:Tu as mis <= 800 donc la deuxième condition est réalisée, et le test s'arrête là
En mettant <800 la deuxième condition ne sera pas réalisée

Ca change rien, mon écran à une hauteur de 800 pixel, tu dois donc laisser <= 800 sinon il n'y aura pas de cas pour un écran de 800.

Dan_A a écrit:Il manque quelque chose au code car, normalement, javascript est interprété côté navigateur donc utilisateur et php côté serveur. Il n'est pas possible d'obtenir une valeur utilisée plus bas!

N'est-il pas possible en javascript de créer des variables que l'on puisse ré-utiliser plus tard dans le code ?


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3835
Inscription: 14 Sep 2006

Re: Détection résolution écran

Message le Mer Juin 22, 2011 17:01

Faut passer à l'Ajax alors pour la communication entre javascript/php

Ton code javascript est executé bien longtemps après que le moteur PHP ait construit la page, ça ne fonctionnera donc pas ^^
Dernière édition par YoyoS le Mer Juin 22, 2011 17:05, édité 1 fois.

toto2525
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 349
Inscription: 20 Sep 2007

Re: Détection résolution écran

Message le Mer Juin 22, 2011 17:04

Un truc fou :

Code: Tout sélectionner
<script type="text/javascript">
<!--
Ecran = screen.height;
if(Ecran<=600){document.write('<?php $hauteur_ecran = 400;?>');}
if((Ecran>600)&&(Ecran<=800)){document.write('<?php $hauteur_ecran = 500;?>');}
if(Ecran>800){document.write('<?php $hauteur_ecran = 600;?>');}
//-->
</script>
<?php echo $hauteur_ecran;?>

Ca affiche "600".

Mais ça :

Code: Tout sélectionner
<script type="text/javascript">
<!--
Ecran = screen.height;
if(Ecran<=600){document.write('400');}
if((Ecran>600)&&(Ecran<=800)){document.write('500');}
if(Ecran>800){document.write('600');}
//-->
</script>

Ca affiche "500".

Punaise...............

toto2525
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 349
Inscription: 20 Sep 2007

Re: Détection résolution écran

Message le Mer Juin 22, 2011 17:07

YoyoS a écrit:Faut passer à l'Ajax alors pour la communication entre javascript/php

Ton code javascript est executé bien longtemps après que le moteur PHP ait construit la page, ça ne fonctionnera donc pas ^^

Je connais pas l'ajax, est-ce que ça serait compliqué de détecter la résolution d'écran en Ajax ?


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3835
Inscription: 14 Sep 2006

Re: Détection résolution écran

Message le Mer Juin 22, 2011 17:08

toto2525 a écrit:Un truc fou :
Code: Tout sélectionner
<script type="text/javascript">
<!--
Ecran = screen.height;
if(Ecran<=600){document.write('<?php $hauteur_ecran = 400;?>');}
if((Ecran>600)&&(Ecran<=800)){document.write('<?php $hauteur_ecran = 500;?>');}
if(Ecran>800){document.write('<?php $hauteur_ecran = 600;?>');}
//-->
</script>
<?php echo $hauteur_ecran;?>

Ca affiche "600".
.


C'est normal puisque php va attribuer plusieurs valeurs à $hauteur_ecran sans prendre en compte ou même lire les conditions:

$hauteur_ecran = 400;
$hauteur_ecran = 500;
$hauteur_ecran = 600;
Dernière valeur 600 -> Ca affiche "600". cqfd


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3835
Inscription: 14 Sep 2006

Re: Détection résolution écran

Message le Mer Juin 22, 2011 17:10

Oui, si JavaScript peut faire un truc, grâce à l'ajax il peut envoyer la donnée à PHP.
Je t'invite à aller lire quelques tutos sur google ^^ Et en production à utiliser le framework jQuery qui rend l'ajax très simple.

Au fait tu veux récupérer la résolution pour faire quoi ? Ca se trouve tu n'en as même pas besoin ^^

toto2525
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 349
Inscription: 20 Sep 2007

Re: Détection résolution écran

Message le Mer Juin 22, 2011 17:31

YoyoS a écrit:Oui, si JavaScript peut faire un truc, grâce à l'ajax il peut envoyer la donnée à PHP.
Je t'invite à aller lire quelques tutos sur google ^^ Et en production à utiliser le framework jQuery qui rend l'ajax très simple.

J'utilise jQuery sur ma page :D , quel serait le code pour détecter la résolution d'écran ?


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3835
Inscription: 14 Sep 2006

Re: Détection résolution écran

Message le Mer Juin 22, 2011 18:30

Celui que tu possèdes déjà, faut juste l'envoyer à une page PHP en ajax.
Bonne recherche :)


Benoit1
WRInaute passionné
WRInaute passionné
 
Messages: 1702
Inscription: 6 Aoû 2004

Re: Détection résolution écran

Message le Mer Juin 22, 2011 19:02

La détection de Google analytics ne te convient pas ???

Enfin, si tu utilises GA...


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3835
Inscription: 14 Sep 2006

Re: Détection résolution écran

Message le Mer Juin 22, 2011 19:03

YoyoS a écrit:Au fait tu veux récupérer la résolution pour faire quoi ? Ca se trouve tu n'en as même pas besoin ^^

Si tu pouvais répondre ^^

toto2525
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 349
Inscription: 20 Sep 2007

Re: Détection résolution écran

Message le Mer Juin 22, 2011 20:32

YoyoS a écrit:
YoyoS a écrit:Au fait tu veux récupérer la résolution pour faire quoi ? Ca se trouve tu n'en as même pas besoin ^^

Si tu pouvais répondre ^^

j'ai un lien html en javascript (qui ouvre une popup) et dans ce lien javascript il y a les dimensions de cette fenêtre popup, je voudrais pouvoir redimensionner cette popup en fonction de la résolution d'écran de mes internautes. Cette popup affiche des videos flash (swf) et des photos.

Voici le style de lien javascript que j'utilise pour ma popup :

Code: Tout sélectionner
<a href='javascript:PopupCentrer("../images.php?ref=332",700,600)'>Cliquez pour agrandir l'image</a>


Dans cet exemple la fenêtre popup aura une dimension de 700x600 mais si un internaute a une résolution de 1024x768 je voudrais que cette popup soit redimensionnée à 500x400 donc remplacer dans mon lien ci-dessus le "700,600" par "500,400" mais pour ça il fautconnaitre la résolution d'écran... pour lui mettre les bons paramètres dans le lien.


YoyoS
WRInaute accro
WRInaute accro
 
Messages: 3835
Inscription: 14 Sep 2006

Re: Détection résolution écran

Message le Mer Juin 22, 2011 21:08

Et tu peux pas tout faire en javascript sans faire appel à PHP ? Car ca te simplifierait tout !

Détection résolution écran

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

  • Similarité et duplicate content
    Cet outil vous permet de calculer la similarité entre 2 pages web. L'algorithme utilisé repose sur l'analyse des occurrences des mots (mais pas sur leur positionnement dans les pages). Google utilise cette notion à certains endroits dans son algorithme, mais de façon bien plus évoluée que ce petit outil... Avoir des pages trop similaires peut entraîner des problèmes d'indexation... Cet outil vous permettra peut-être de résoudre certains problèmes de contenus dupliqués.
  • Tester la validité d'un lien
    Cet outil vous permet de tester la validité d'un lien pour le référencement. Il vous indique la nature du lien (lien en dur, redirection bien gérée par les moteurs ou redirection mal gérée par les moteurs).


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités