Calcul avec une variable

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Calcul avec une variable

par Hywan » 27 avr. 2008, 10:21

J'insiste pour la dernière fois : et CSS ? Comme tu n'as pas l'air de tenir compte de mes remarques, je n'insisterai pas plus, mais je reste pratiquement persuadé que ton problème peut se résoudre sans Javascript (comme 99% des chartres graphiques).

par caroube » 26 avr. 2008, 19:17

Cependant, be careful (avec l'accent du sud svp) à ceux qui n'autorise pas les cookies!
Oui, je fais careufoule. Mais honnêtement, tu en connais beaucoup des gens qui refusent les cookies ? Parce qu'à ce compte-là, il faut aussi tenir compte des 4 ahuris qui ont désactivé le javascript.

de toute façon, si je ne récupère pas la résolution, je considère que c'est du 800x600. et tant pis si ce n'est pas ça.

par Hywan » 26 avr. 2008, 12:29

Moi je suis sûr que ton problème peut-être résolu via du CSS pure, mais comme tu n'as pas l'air de nous dire ce que tu veux faire, c'est dommage pour toi.

Edit : ah oui, une autre chose. T'es variables qui contiennent <script>...</...> ne font contenir qu'une chaîne de caractères, c'est tout. Donc pas de valeur, rien. Pour PHP, ce ne sont que des caractères. Donc le problème exposé comme ça, ne peut pas marcher, c'est impossible.

par danne » 26 avr. 2008, 09:28

ok merci à tous

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

par Aureusms » 26 avr. 2008, 09:24

Pour résoudre une problématique similaire, nous avons fait ceci :
- dans la page www.site/index.php du site :
--> un bout de code JS récupère la résolution et l'inscrit dans un cookie
--> redirige le visiteur sur la page www.site/home.php

- les pages php lisent la résolution dans un cookie. Si la résolution n'est pas trouvée, alors le visiteur est redirigé vers www.site/index.php avec l'URL de la page passé en argument
- dans la page www.site/index.php du site :
--> un bout de code JS récupère la résolution et l'inscrit dans un cookie
--> redirige le visiteur sur la page www.site/page_parametre.php
Je fais exactement la même méthode. Cependant, be careful (avec l'accent du sud svp) à ceux qui n'autorise pas les cookies! Dans ce cas là je passe les résolutions dans l'URL(un peu comme les ID de session)

par caroube » 26 avr. 2008, 08:18

Pour résoudre une problématique similaire, nous avons fait ceci :
- dans la page www.site/index.php du site :
--> un bout de code JS récupère la résolution et l'inscrit dans un cookie
--> redirige le visiteur sur la page www.site/home.php

- les pages php lisent la résolution dans un cookie. Si la résolution n'est pas trouvée, alors le visiteur est redirigé vers www.site/index.php avec l'URL de la page passé en argument
- dans la page www.site/index.php du site :
--> un bout de code JS récupère la résolution et l'inscrit dans un cookie
--> redirige le visiteur sur la page www.site/page_parametre.php

par AB » 26 avr. 2008, 05:35

Pour paraphraser HyWaN et Calimero, quelque soit l'ordre dans lequel tu met tes différents codes, PHP sera toujours exécuté avant le code javascript. Donc inutile d'essayer de récupérer de cette façon un résultat d'une fonction javascript par PHP.

Pour faire basiquement ta fonction dans l'ordre, il faudrait donc récupérer la résolution de l'écran par javascript, et toujours avec javascript faire un reload de ta page en transmettant les variables nécessaires dans l'url, variables qui, au reload de ta page, pourront être récupérées par php.

par danne » 26 avr. 2008, 01:01

J'avais commencé en CSS et je suis tombé sur ce script qui soit disant fonctionne. Encore une question bête, tu me dis çà ne dois pas fonctionné et pourquoi çà affiche la résolution de l'écran la variable $HauteurEcran est égale à 1050. Est-ce parce que mon site est sur mon micro ???

par Calimero » 26 avr. 2008, 00:51

Ce que je ne comprends pas c'est que la variable donne bien la valeur récupérée en JS. Mais bon, pour moi une variable gardait cette valeur. Je raisonne en VB, désolé. Ce que je veux c'est connaitre la résolution de l'écran du visiteur du site et modifier la présentation en fonction de ces valeurs . En résumé adapter certaines valeurs : largeur de blocs en appliquant un coef
Bonsoir Danne,

Ce que HyWaN t'explique, c'est que ce n'est pas comme cela que tu atteindras ce but. Développer un site web pose des problématiques bien différentes du développement d'applis en VB. Tu dois comprendre le principe du client/serveur et l'ordre dans lequel les choses se produisent :

1/ Ton client (Internet explorer, firefox, etc...) demande une page au serveur
2/ Le serveur recoit la demande et va envoyer une page au client, en faisant éventuellement appel a un module tiers pour interpréter du code dans la page (ici du php)
3/ Le client recoit la page, la decore via CSS et execute eventuellement du javascript.

Ce qui veut dire que :
<?php
$HauteurEcran = "<script>document.write(EcranHaut);</script>"; 
$LargeurEcran = "<script>document.write(EcranLarg);</script>"; 
?> 
N'a pas lieu d'etre et ne fonctionnera pas. Tu cherches a traiter en php quelquechose qui n'existe pas encore.

CSS est le langage adapté a la mise en page et a la transformation visuelle des elements, c'est dans cette direction que tu devrais orienter tes recherches. Tu verras qu'il est aisé de donner a tes boites des tailles en pourcentage qui permettent d'aboutir a ce qu'on appelle un "design fluide", c'est a dire des boites qui se redimensionnent suivant la taille de la boite qui les contient.

par danne » 26 avr. 2008, 00:26

Ce que je ne comprends pas c'est que la variable donne bien la valeur récupérée en JS. Mais bon, pour moi une variable gardait cette valeur. Je raisonne en VB, désolé. Ce que je veux c'est connaitre la résolution de l'écran du visiteur du site et modifier la présentation en fonction de ces valeurs . En résumé adapter certaines valeurs : largeur de blocs en appliquant un coef

par Hywan » 26 avr. 2008, 00:09

PHP est exécuté côté serveur et HTML, CSS, Javascript et consort, côté client. Si on réfléchit 5 sec, le PHP est donc exécuté avant le Javascript. Donc demander à PHP de récupérer une valeur depuis un code Javascript de cette façon est une aberration.

Solution, tout faire en Javascript. Mais là, je me demande si c'est bien utile. Que cherches-tu exactement à faire ? Car je parierais que CSS saura remplacer ta belle solution ...

par danne » 26 avr. 2008, 00:02

ok, je ne connais pas JS, j'ai trouvé ce script sur le net, mais est-ce qu'il y a une solution pour récupérer la résolution et la traiter pou déterminer un coef ??

par Hywan » 25 avr. 2008, 23:55

Hey :),

Réfléchis de quels côtés sont exécutés PHP et Javascript et tu verras que ton code est une totale aberration. Si si, réfléchis bien ;-).

Calcul avec une variable

par danne » 25 avr. 2008, 21:05

Bonjour, j'ai problème avec une variable, çà parait simple et pourtant cela ne marche pas. J'ai trouvé un script JS pour donner la résolution de l'écran du visiteur.

Code : Tout sélectionner

SCRIPT LANGUAGE="JavaScript"> var EcranHaut = screen.height; var EcranLarg = screen.width; </SCRIPT>
Je récupère ces valeurs dans une variable
<?php
$HauteurEcran = "<script>document.write(EcranHaut);</script>"; 
$LargeurEcran = "<script>document.write(EcranLarg);</script>"; 
?> 
J'affiche le résultat
<a>Votre résolution = <?php  echo $LargeurEcran;?> x <?php echo $HauteurEcran;?></a>
J'affiche bien : Votre résolution 1600 x 1050
Je veux traiter ces valeurs pour redimensionner les éléments du site suivant la résolution de l'écran du visiteur. J'ai commencer par un calcul tout simple pour voir si cela fonctionnait.
<a>Coef hauteur =<?php echo $HauteurEcran+2;?></a>
Résultat =2, si j'enlève +2 j'affiche bien 1050.
Est-ce un problème JS-PHP ???
D'avance merci.