OVH Cloud OVH Cloud

Javascirpt et PHP

28 réponses
Avatar
Jeanmi
Salut a tous !

Est-il possible d'insérer du php entre des balises javascript ????
Ex :<script language="javascript"> <?php Code PHP?> </script> ???? Si
oui comment ????

Merci de me venir en aide

JM

8 réponses

1 2 3
Avatar
ASM
Olivier Miakinen wrote:

Le div (trop grand) est là essspres pour justement avoir les ascenceurs.
(sinon ce s'rait trop fastoche !)



C'est dommage : pour rajouter un ascenseur, il suffit de diminuer la
taille de la fenêtre, alors que pour le supprimer on est limité par la
résolution de l'écran. Tu limites donc volontairement la portée de tes
tests.


alorsse donc ... avec div réduit :
même adresse

L'apparition ou la disparition de l'ascenseur horizontal ne change
strictement rien à la valeur calculée pour la hauteur disponible, que
ce soit sous Moz, Fx ou IE.


tant mieux, c'est çà de gagné :-)
ou bien j'ai mal compris :
la taille est donnée asc compris qu'il y soit ou non ?

Finalement, j'ai réussi à virer l'ascenseur vertical pour Mozilla, et le
résultat est le même : valeur correcte au pixel près sans ascenseur,
mais l'apparition de l'ascenseur ne change pas le résultat.


c'est ce qu'il semblerait (suivant le navigateur)

Ha ! çà se cmplique !
j'ai mis un bouton pour agrandir le div :
- hop ascenseurs
(c'est ce que je voulais : asc ou non avec même taille fenetre)
- hop autres valeurs (diferentes d'1 nav à l'autre)

Alorsse ... la largeur ?



Pour IE, comme je ne peux pas comparer avec ou sans ascenseur, je suis
incapable de t'en dire plus. Juste que « ascenseur ± erreur = 20 px ».
Bon, il se trouve que pour la hauteur j'ai aussi 20 px de trop avec
ascenseur au lieu de 4px, je suppose donc que les deux ascenseurs ont
une épaisseur de 16 pixels.




--
Stephane Moriaux et son [moins] vieux Mac


Avatar
ASM
Jean-François Hicter wrote:
Le centrage vertical est un gros soucis en CSS2
http://perso.wanadoo.fr/stephane.moriaux/truc/gn/exo/00.shtml


Ça marche pas avec Safari !
Ton code me claque une *erreur #11* ???


si çà marche (je viens de regarder)
l'erreur (rouge) c'est rien qu'1 compteur qui foire
Bon ! me suis décidé à l'enlever ...

Tout dépend de ce que tu veux centrer.


Un bloc entier : un TABLE.CONTAINER ou une DIV.CONTAINER...
Le problème, c'est que ce container est alimenté dynamiquement en PHP,
donc, sa hauteur varie...


Donc on peut arreter les frais :
en admettant qu'on ait les bons parametres
- pre-cacul de hauteur de block
- pre-calcul hauteur fenetre
si je fais caractéres zoomés :
- comment re-calcules-tu la hauteur ?
- comment tu faits ton pre-calcul (comment sais-tu que je suis en zoom+)

J'ai vu des méthodes pour centrer un bloc en
CSS2 mais ce bloc doit être de cotes fixes.


toutafé (ou tout au moins connues)

toujours pas compris l'interet du PHP
(sans doute parceque je ne m'en sers pas ?)



Dans la définition des CSS, tu peux renseigner une variable par du PHP.
Exemple : body { height: <?php print($_GET[h]."px"); ?> }
Ici, la variable h, passée en URL par la méthode GET, est assignée à la
hauteur du BODY.


oui et t'alors ?
puisque je l'ai obtenue en JS (un jour on va y arriver)
hop! je style ou restyle direct en JS
pourquoi poster au php ?
pour qu'il te renvoie la bonne FdS ? pas plus ?
alors qu'en JS tu as déjà fait la bidouille ?

je ne comprends absolument pas l'interet de cet aller+retour


Centrer une image :
================== >>
methode javascript + css :

<html>
<body style="background:#999">
<div id="centreur"
style="position:absolute;width:1px;height:1px;top:50%;left:50%">
<img src="photo.jpg"
style="padding:10px;background:white;border:5px outset goldenrod;"
onload="var w=this.width;
var h=this.height;
this.style.marginTop = -(h/2)+'px';
this.style.marginLeft = -(w/2)+'px';" />
</div>
</html>



Marche pas sur Safari : 10 px trop basse.
Idem avec DTD XHTML strict !


Ha? ben c'est donc pas si mal :-)
faut juste compenser les px du padding ...
Et tu n'as pas regardé sur PC Win ou Linux :-)
Ni avec Opera sans doute ? :-(

methode html :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3c.org/TR/REC-html40/loose.dtd">



Marche pas avec une DTD XHTML strict !


et pourquoi crois-tu que le doctype est celui-là ?

Ne me demande pas pourquoi je code en XHTML strict, stp !
On m'a dit que c'était l'avenir blah blah blah, c'est sérieux blah blah,
ça verouille le bordel, etc. !


ben si tu veux pas te servir de
ce qui a été longuement rôdé par d'aucuns
sous des pretextes spécieux ...

alors il ne faut s'occuper que des 3 navigateurs
respectant ces spéciosités.
ce qui va bien élaguer pas mal d'épines.

Mouais ! Si tout le monde utilise une DTD différente, on va pas s'en
sortir...


Y a des sites qui ne s'occupent quasi que de çà :
les reactions des navigateurs à differentes ddt
justement pour qu'on puisse s'en servir à bon et sciant.

Donc, en résumé, la seule méthode qui marche quelque-soit la DTD -- et
avec un container de hauteur variable -- semble être le passage de la
variable en PHP, isn't it ?


Hein ? Quoi tu dis ?
comment est calculée cette variable ?
(pour les polices Mac, PC, Linux?
pour la résolution d'écran?
pour le réglage par défaut du navigateur ?
pour ... )

déjà qu'on n'arrive pas à connaitre la taille de la fenetre !

remis mon test avec un bouton pour ascenseurs oui-non
c'est très rigolo !
http://perso.wanadoo.fr/stephane.moriaux/truc/taille_fenetre.htm



--
Stephane Moriaux et son [moins] vieux Mac


Avatar
Olivier Miakinen

alorsse donc ... avec div réduit :
même adresse


Tout d'abord, voici le test avec Mozilla 1.6 (je n'ai pas Firefox ici,
mais mes tests précédents me font penser que ce sera la même chose).

Sans ascenseur, je retaille la fenêtre de telle façon qu'elle fasse 11
carreaux sur 8, soit 550x400 pixels.

------------------------------------------------
document.documentElement.offsetHeight/Width
IE : largeur = 550 - hauteur = 400

window.innerHeight/window.innerWidth
FF : largeur = 550 - hauteur = 400

RESULTATS : largeur = 550 - hauteur = 400
------------------------------------------------

Je rajoute maintenant les ascenseurs :

------------------------------------------------
document.documentElement.offsetHeight/Width
IE : largeur = 910 - hauteur = 1036

window.innerHeight/window.innerWidth
FF : largeur = 550 - hauteur = 400

RESULTATS : largeur = 550 - hauteur = 400
------------------------------------------------

Visiblement, ce que tu calcules par offsetHeight/Width doit être la
taille de la page (avec ou sans les ascenseurs, je ne sais pas), alors
que innerHeight/Width serait plutôt la taille de la partie visible (y
compris d'éventuels ascenseurs).


Pour IE, maintenant. Curieusement, je n'arrive pas à supprimer
l'emplacement de l'ascenseur vertical, même quand il n'y a en fait pas
d'ascenseur. Là encore je retaille la fenêtre sur 550x400 pixels, les
400 étant vraiment en bas de la page alors que les 550 sont calés le
long de l'ascenseur vertical.

------------------------------------------------
document.documentElement.offsetHeight/Width
IE : largeur = 570 - hauteur = 404

window.innerHeight/window.innerWidth
FF : largeur = zcrot - hauteur = zcrot

RESULTATS : largeur = 570 - hauteur = 404
------------------------------------------------

Je remets les ascenseurs :

------------------------------------------------
document.documentElement.offsetHeight/Width
IE : largeur = 570 - hauteur = 404

window.innerHeight/window.innerWidth
FF : largeur = zcrot - hauteur = zcrot

RESULTATS : largeur = 570 - hauteur = 404
------------------------------------------------

Ici, offsetHeight/Width semble indiquer :
{ zone visible + épaisseur ascenseur + 4 )
avec :
{ épaisseur ascenseur = 16 }

--
Olivier Miakinen
Non, monsieur le juge, je vous le jure : jamais je n'ai cité
Bruxelles dans ma signature.

Avatar
Olivier Miakinen

Sans ascenseur, je retaille la fenêtre de telle façon qu'elle fasse 11
carreaux sur 8, soit 550x400 pixels.


Pour confirmer mon intuition (ascenseur = 16, extra IE = 4), je cale la
fenêtre sur 550x400, mais cette fois *avec* les ascenseurs.



Mozilla :

------------------------------------------------
document.documentElement.offsetHeight/Width
IE : largeur = 550 - hauteur = 400

window.innerHeight/window.innerWidth
FF : largeur = 550 - hauteur = 400

RESULTATS : largeur = 550 - hauteur = 400
------------------------------------------------


------------------------------------------------
document.documentElement.offsetHeight/Width
IE : largeur = 910 - hauteur = 1036

window.innerHeight/window.innerWidth
FF : largeur = 566 - hauteur = 416

RESULTATS : largeur = 566 - hauteur = 416
------------------------------------------------
(550 + 16 = 566 ; 400 + 16 = 416)



IE :

------------------------------------------------
document.documentElement.offsetHeight/Width
IE : largeur = 570 - hauteur = 404

window.innerHeight/window.innerWidth
FF : largeur = zcrot - hauteur = zcrot

RESULTATS : largeur = 570 - hauteur = 404
------------------------------------------------
(400 + 4 = 404)


------------------------------------------------
document.documentElement.offsetHeight/Width
IE : largeur = 570 - hauteur = 420

window.innerHeight/window.innerWidth
FF : largeur = zcrot - hauteur = zcrot

RESULTATS : largeur = 570 - hauteur = 420
------------------------------------------------
(550 + 16 + 4 = 570 ; 400 + 16 + 4 = 420)


--
Olivier Miakinen
Non, monsieur le juge, je vous le jure : jamais je n'ai cité
Bruxelles dans ma signature.

Avatar
Jean-François Hicter
si çà marche (je viens de regarder)


Au temps pour moi !
Je n'étais pas allé jusqu'au bout du tuto...
Je pensais que c'était le conteneur blanc que tu voulais centrer...
Cake is not dead !







Un bloc entier : un TABLE.CONTAINER ou une DIV.CONTAINER...
Le problème, c'est que ce container est alimenté dynamiquement en PHP,
donc, sa hauteur varie...



Donc on peut arreter les frais :
en admettant qu'on ait les bons parametres
- pre-cacul de hauteur de block
- pre-calcul hauteur fenetre
si je fais caractéres zoomés :
- comment re-calcules-tu la hauteur ?
- comment tu faits ton pre-calcul (comment sais-tu que je suis en zoom+)


Il ne faut jamais zoomer, malheureux ! :-)
Touche à rien ! Regarde ! Vois ! La vérité est là, devant tes yeux
d'enfant perdu en ce monde de souffrance ! :-)





je ne comprends absolument pas l'interet de cet aller+retour


Tu "style" en JS...
Moi, à la base, pas savoir comment "styler" en JS !
Voilà, pourquoi !






Donc, en résumé, la seule méthode qui marche quelque-soit la DTD -- et
avec un container de hauteur variable -- semble être le passage de la
variable en PHP, isn't it ?



Hein ? Quoi tu dis ?
comment est calculée cette variable ?


La hauteur de la innerWindowDeLaMort me suffit !
Je la claque au BODY, et après je centre le conteneur dans un tableau --
vertical-align: middle -- à height: 100 %. L'important, c'est le
centrage. M'en fous de la hauteur du conteneur...
Viandage ou pas viandage ?!

(pour les polices Mac, PC, Linux?
pour la résolution d'écran?
pour le réglage par défaut du navigateur ?
pour ... )

déjà qu'on n'arrive pas à connaitre la taille de la fenetre !


J'avais lâché Flash en me disant que les CSS me permettraient d'obtenir
des résultats "semblables" sans la lourdeur de Flash...
Mais là, euuuh, j'ai comme une envie de refaire du Full-Flash !

C'est quoi, au fait, ton 'blem avec Flash ?


Avatar
ASM
Jean-François Hicter wrote:
Hein ? Quoi tu dis ?
comment est calculée cette variable ?


La hauteur de la innerWindowDeLaMort me suffit !
Je la claque au BODY, et après je centre le conteneur dans un tableau --


Ha ? on ne parle plus de centrage vertical par css ?

vertical-align: middle -- à height: 100 %. L'important, c'est le
centrage. M'en fous de la hauteur du conteneur...
Viandage ou pas viandage ?!


si le conteneur ne dépasse pas de la zone d'affichage

Ha ben oui ... si tu utilises un table, à ce que je comprends
(avec le doctype qui va bien)
Note qu'à ce compte, le table se débrouille tout seul,
tu n'as rien à lui esspliquer des hauteurs de fenêtre.
(me semble t-il ?)

J'avais lâché Flash en me disant que les CSS me permettraient d'obtenir
des résultats "semblables" sans la lourdeur de Flash...
Mais là, euuuh, j'ai comme une envie de refaire du Full-Flash !


je n'ai jamais fait de Flash
On est maître des polices ?
ce sont les tiennes qui sont vectorisées et çà ne fait pas
appel à celles du visiteur ?

C'est quoi, au fait, ton 'blem avec Flash ?


c'est que je n'ai pas la main
que je sais pas d'avance où y m'embarque
qu'en rtc
quand tu tombes sur un swf de la mort qui fait tout
sans changer de page
tu as passé je ne sais combien de temps à pre-charger
sans savoir dans quoi tu vas tomber
que quand on est sur un swf aux p'tits oignons
(pensé par un gus qui est dans son trip à lui tout seul)
et que je veux faire un p'tit retour à la phase 3
du film que me joue le dit-gus
je peux pas y aller sans me faire un rechargement complet du toutim
et de recommencer au début avec sa beeeellllle aimation débille
qui dure des plombes que çà m'énerve au plus haut point,
que je dois me refarcir les points 1 et 2 avant d'ateindre le 3
et comme maintenant que j'ai revu le 3 je peux pas sauter au 8 où j'en étais ...

Je peux en faire des pages ...

Bon! ceci étant, ponctuellement, pour des applis bien ciblées
je ne crache pas forcément dessus (si on en et averti par ailleurs).

D'autant que perso, plus la présentation est sobre
au plus mieux çà me plait(*)
et au plus mieux c'est lisible et sans doute exploitable.
Le bouton +ou- texte avec lien associé repéré dès avant affichage complet de la page
et cliqué pour partir tt de suite là où je veux sans même voir les
sublimes délires photoshopesques : çà c'est de l'internet.


(*) le sobre et simple : je n'ai pas dit que je savais le faire ... !
--
Stephane Moriaux et son [moins] vieux Mac


Avatar
Jean-François Hicter
Hein ? Quoi tu dis ?
comment est calculée cette variable ?



La hauteur de la innerWindowDeLaMort me suffit !
Je la claque au BODY, et après je centre le conteneur dans un tableau --



Ha ? on ne parle plus de centrage vertical par css ?


Au style du BODY voulais-je dire !
Ach !


vertical-align: middle -- à height: 100 %. L'important, c'est le
centrage. M'en fous de la hauteur du conteneur...
Viandage ou pas viandage ?!



si le conteneur ne dépasse pas de la zone d'affichage


Of course ! :-)

Ha ben oui ... si tu utilises un table, à ce que je comprends
(avec le doctype qui va bien)
Note qu'à ce compte, le table se débrouille tout seul,
tu n'as rien à lui esspliquer des hauteurs de fenêtre.
(me semble t-il ?)


Eh ouais, ça dépend de la DTD... :-(
En fait, avec les différents essais que j'ai fait, soit les TABLE
marche, soit les CSS, mais les 2 en mêmes temps, nein !
Le placement par TABLE est considéré comme dépassé. Mais à part ce foutu
problème d'alignement vertical, les CSS c'est nickel !


J'avais lâché Flash en me disant que les CSS me permettraient
d'obtenir des résultats "semblables" sans la lourdeur de Flash...
Mais là, euuuh, j'ai comme une envie de refaire du Full-Flash !



je n'ai jamais fait de Flash
On est maître des polices ?
ce sont les tiennes qui sont vectorisées et çà ne fait pas
appel à celles du visiteur ?


Contrôle total des polices. Elles sont embarquées dans le SWF, comme
pour un PDF.


C'est quoi, au fait, ton 'blem avec Flash ?
[...]



Okay, j'en prends bonnes notes...
Tu peux faire du Flash léger effectivement, mais ça veut dire : pas de
vidéos, ni de son -- ou du 8 bits pourri -- : du HTML, quoi !
T'es encore en RTC ?! C'est du snobisme ou tu crèches dans un grotte
dans le Macif Central ?! :-)
J'ai ouï dire que 95 % du pays était en haut-débit...
On m'aurait menti à l'insu de mon plein gré ?!



Avatar
ASM
Jean-François Hicter wrote:
Tu peux faire du Flash léger effectivement, mais ça veut dire : pas de
vidéos, ni de son -- ou du 8 bits pourri -- : du HTML, quoi !


Il se trouve que le html jaime bien :-)
je ne suis pas encore revenu de mon ravissement :
t'y clique, hop! ça te change de page.

T'es encore en RTC ?! C'est du snobisme ou tu crèches dans un grotte
dans le Macif Central ?! :-)


Oui, qque part par là
et l'ADSL n'est arrivé que cette année en Mai
Je suis encore très sensible aux lourdeurs
surtout quand elles sont, comme souvent, complètemnt gratuites.

J'ai ouï dire que 95 % du pays était en haut-débit...
On m'aurait menti à l'insu de mon plein gré ?!


95% ? on t'a certainement enduit des reures

--
Stephane Moriaux et son [moins] vieux Mac

1 2 3