Page 1 sur 1

remplacements imbriqués de deux textes

Posté : 21 févr. 2014, 09:35
par mm91
bonjour,

J'ai actuellement une fonction de %suntxt% qui me remplace "brumeux" par "nuage très épais"
c'est celle-là:

%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%


ça marche très bien,

Mais je voudrais en plus faire une fonction qui m'écrive "ensoleillé" en couleur.

J'ai rajouté cela:

%ws_setmem[1]=%ws_replacestr=ensoleillé~ <font color=" #FF8000 "> ensoleillé ~%suntxt%%%
%ws_replacestr= ensoleillé ~<font color=" #FF8000 "> ensoleillé ~%ws_getmem[1]%%


ça marche bien, sauf que les deux fonctions se suivent:
j'ai "ensoleillé" écrit en noir
suivi de "ensoleillé" écrit en orange.

comment imbriquer (?) ses deux fonctions pour que:
"ensoleillé" écrit en orange
remplace
"ensoleillé" écrit en noir
?

PS:
c'est dans cette page à la ligne "couverture nuageuse / actuel":
http://icare.cinq.free.fr/meteo/courrent.html

Re: remplacements imbriqués de deux textes

Posté : 21 févr. 2014, 10:42
par webmaster
Bonjour,
Je ne peux pas faire de test pour le moment, mis une chose me surprend:
Là tu affiches une première fois en noir:
mm91 a écrit : %ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%
Et là une seconde en orange:
mm91 a écrit : %ws_setmem[1]=%ws_replacestr=ensoleillé~ <font color=" #FF8000 "> ensoleillé ~%suntxt%%%
%ws_replacestr= ensoleillé ~<font color=" #FF8000 "> ensoleillé ~%ws_getmem[1]%%
Encore une fois juste comme çà à la louche je ferai un truc dans ce genre:
%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_setmem[2]%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%
%ws_setmem[3]=%ws_replacestr=ensoleillé~ <font color=" #FF8000 "> ensoleillé ~%ws_getmem[1]%%%%
%ws_replacestr= ensoleillé ~<font color=" #FF8000 "> ensoleillé ~%ws_getmem[3]%%

Re: remplacements imbriqués de deux textes

Posté : 21 févr. 2014, 10:58
par mm91
merci

je veux:
1/ que tous les textes de "%suntxt%"restent en noir,
2/sauf "ensoleillé" que je veux en orange.

En plaçant les deux fonctions à la suite, la première condition est respectée,
Mais la deuxième m'écrit deux fois "ensoleillée": une fois en noir et une fois en orange.

Je suppose que la solution ressemble un peu à ce que tu proposes, mais celle-ci ne marche pas (bien qu'ayant rajouté un "=" manquant)

Je ne suis pas pressé, je peux attendre que tu fasse des essais si besoin.

Re: remplacements imbriqués de deux textes

Posté : 21 févr. 2014, 12:08
par mm91
Voilà, j'ai fait quelques petites corrections (placement des "%")
et ça marche !

Juste un truc que je ne comprends pas bien:
il faut que je rajoute:
<font color=" Black ">
à la fin
pour ne pas que la ligne suivante:
<br><font size="1">soleil <font size="4">%sunproz%</font></b></td></tr>
soit aussi en orange

ça donne ça:

%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%%
%ws_setmem[3]=%ws_replacestr=ensoleillé~ <font color=" #FF8000 "> ensoleillé ~%ws_getmem[1]%%%
%ws_replacestr= ensoleillé ~<font color=" #FF8000 "> ensoleillé ~%ws_getmem[3]%%

<font color=" Black ">

<br><font size="1">soleil <font size="4">%sunproz%</font></b></td></tr>

Re: remplacements imbriqués de deux textes

Posté : 21 févr. 2014, 13:24
par webmaster
mm91 a écrit :

Code : Tout sélectionner

%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%%
%ws_setmem[3]=%ws_replacestr=ensoleillé~ <font color=" #FF8000 "> ensoleillé ~%ws_getmem[1]%%%
%ws_replacestr= ensoleillé ~<font color=" #FF8000 "> ensoleillé ~%ws_getmem[3]%%
<font color=" Black ">
Je crois que je t'ai compliqué la vie essaie çà pour voir:

Code : Tout sélectionner

%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%%
%ws_setmem[3]=%ws_replacestr=ensoleillé~ <font color=" #FF8000 "> ensoleillé ~%ws_getmem[1]%%%
%ws_getmem[3]%
Et replace le changement de couleur un peu plus loin dans la balilse déjà existante, mais c'est purement esthétique:

Code : Tout sélectionner

<br><font size="1" color=" Black ">soleil <font size="4">%sunproz%</font></b></td></tr>

Re: remplacements imbriqués de deux textes

Posté : 21 févr. 2014, 20:01
par mm91
webmaster a écrit : Je crois que je t'ai compliqué la vie essaie çà pour voir:

Code : Tout sélectionner

%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%%
%ws_setmem[3]=%ws_replacestr=ensoleillé~ <font color=" #FF8000 "> ensoleillé ~%ws_getmem[1]%%%
%ws_getmem[3]%
Et replace le changement de couleur un peu plus loin dans la balilse déjà existante, mais c'est purement esthétique:

Code : Tout sélectionner

<br><font size="1" color=" Black ">soleil <font size="4">%sunproz%</font></b></td></tr>
Ca marche !
(finalement je laisse en couleur la ligne du dessous)

Mais SURPRISE:

Avec Firefox (27.0.1):
"ensoleillé soleil 100%"
apparaît bien en orange

mais avec IE (8)
ça apparaît en vert !!

pourtant le code couleur:
#FF8000
(que vous pouvez vérifier dans le code source de la page)
correspond bien à orange, j'ai vérifié sur plusieurs site Internet qui donnent les couleurs en html.

à noter également que c'est le même code (#FF8000) qui est utilisé dans la ligne:
"Année - (Tmax ≥ 0°C) [année dernière]"
en bas de la page, et que cette ligne reste bien Orange avec FF et IE.

Voyez-vous le même pb. chez vous (si vous avez IE) ?

Que peut-il se passer ?

la page d'essai en question:
http://icare.cinq.free.fr/meteo/courren ... uleur.html

Re: remplacements imbriqués de deux textes

Posté : 21 févr. 2014, 22:18
par webmaster
Alors là, les différente interprétation entre Internet Explorer et Firefox, vaste débat.
Remplace ton #ff8000 par orange, ça devrait régler le problème.

Re: remplacements imbriqués de deux textes

Posté : 22 févr. 2014, 07:53
par mm91
webmaster a écrit :Alors là, les différente interprétation entre Internet Explorer et Firefox, vaste débat.
Remplace ton #ff8000 par orange, ça devrait régler le problème.
Ah oui, mais là, pour la couleur c'est quand même un peut fort !!

C'est quand même pas courant que les couleurs changent entre FF et IE ?
(et d'une façon différente dans la même page !)

Si je met "orange" à la place de "#ff8000":
- c'est bien orange (plus clair) avec FF
-mais c'est bleu avec IE !!!!

on croit rêver....

tu peux faire l'essai en copiant le code source de cette page et en remplaçant le code couleur dans la ligne "couverture nuageuse / actuel"
et en l'ouvrant avec FF et avec IE.

http://icare.cinq.free.fr/meteo/courren ... uleur.html

Re: remplacements imbriqués de deux textes

Posté : 22 févr. 2014, 08:11
par mm91
Bon, et bien j'ai trouvé !!

il fallait remplacer
" #FF8000 "
par
"#FF8000"
(il y avait deux espaces en trop)

et maintenant ça reste orange avec FF et IE
http://icare.cinq.free.fr/meteo/courren ... uleur.html

Ouf, j'ai eu peur !...

Re: remplacements imbriqués de deux textes

Posté : 27 févr. 2014, 13:54
par mm91
Je reviens sur ces formules:
(elles donnent toutes les deux les mêmes résultats avec le même défaut)


%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%%
%ws_setmem[3]=%ws_replacestr=ensoleillé~ <font color="#FF8000"> ensoleillé ~%ws_getmem[1]%%%
%ws_replacestr= ensoleillé ~<font color="#FF8000"> ensoleillé ~%ws_getmem[3]%%

ou:

%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%%
%ws_setmem[3]=%ws_replacestr=ensoleillé~ <font color="#FF8000"> ensoleillé ~%ws_getmem[1]%%%
%ws_getmem[3]%


car depuis qu'on a rajouté le changement de couleur sur "soleil" (cette fonction marche bien),
"brumeux" n'est plus remplacé par "nuages très épais"

alors que ce remplacement fonctionnait bien avant qu'on fasse la modification "couleur"c'est à dire ainsi:
%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%


On retombe sur le problème de l'imbrication de deux changements de texte.

Help!
où est l'erreur ?

Re: remplacements imbriqués de deux textes

Posté : 27 févr. 2014, 15:26
par webmaster
Bonjour,

Essaie:

Code : Tout sélectionner

%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%%
%ws_setmem[3]=%ws_replacestr=ensoleillé~ <font color="#FF8000"> ensoleillé ~%ws_getmem[2]%%%
%ws_getmem[3]%
A quoi sert cette ligne:

Code : Tout sélectionner

%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
Je n'avais jamais fait attention que l'affichage brumeux* existait !

Re: remplacements imbriqués de deux textes

Posté : 27 févr. 2014, 16:30
par mm91
OK, avec ça:

%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=brumeux~nuages très épais~%ws_getmem[1]%%%
%ws_setmem[3]=%ws_replacestr=ensoleillé~ <font color="#FF8000"> ensoleillé ~%ws_getmem[2]%%%
%ws_getmem[3]%

ça à l'air de marcher (changement de texte et de couleur)
(j'ai normalement essayé toutes les combinaisons de couverture nuageuses).

Effectivement il y avait une entrée en mémoire qui ne sortait pas !
(je suppose qu'il doit toujours y avoir autant de ws_setmem[x] que de
ws_getmem[x])


Pour la première ligne, elle a toujours existé; il faut bien que %suntxt% apparaisse quelque part.


Le terme "brumeux" tu le trouves dans le menu:
"Station météo / Sondes spéciales / Solaire":
en bas à gauche.


Donc je surveille et si je ne reviens pas c'est que c'est bon.

encore merci.

Re: remplacements imbriqués de deux textes

Posté : 27 févr. 2014, 17:50
par webmaster
mm91 a écrit :Effectivement il y avait une entrée en mémoire qui ne sortait pas !
(je suppose qu'il doit toujours y avoir autant de ws_setmem[x] que de
ws_getmem[x])
Oui, même si ce n'est pas une obligation !
Mais en toute logique, si l'on place une mesure dans une variable c'est pour l'utiliser ensuite.
mm91 a écrit :Pour la première ligne, elle a toujours existé; il faut bien que %suntxt% apparaisse quelque part.
Nous sommes d'accord, mais pourquoi pas sur la ligne du dessous ?

Code : Tout sélectionner

%ws_setmem[1]=%ws_replacestr=brumeux~nuages très épais~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=ensoleillé~ <font color="#FF8000"> ensoleillé ~%ws_getmem[1]%%%
%ws_getmem[2]%
%ws_setmem[1]=%ws_replacestr=brumeux*~nuages très épais*~%suntxt%%%
Cette ligne n'a lieu d'être que si brumeux* ou nuages très épais* peuvent être affichés !
D'où ma remarque sur les * devant les brumeux et nuage très épais.

Re: remplacements imbriqués de deux textes

Posté : 27 févr. 2014, 18:49
par mm91
OK,
je fais l'essai demain.

Re: remplacements imbriqués de deux textes

Posté : 28 févr. 2014, 11:07
par mm91
J'ai refais les essais en simulant tous les niveaux d'ensoleillement (donc tous les textes possibles de %suntxt%).

ça marche !
(changement de texte et changement de couleur)

La formule définitive (que j'ai appliqué également à %sun1htxt%)
est donc:

%ws_setmem[1]=%ws_replacestr=brumeux~nuages très épais~%suntxt%%%
%ws_setmem[2]=%ws_replacestr=ensoleillé~ <font color="#FF8000"> ensoleillé ~%ws_getmem[1]%%%
%ws_getmem[2]%

:Panneau-Merci: