Problème encodage variables {User} page HTML
5 participants
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1 • Partagez
Problème encodage variables {User} page HTML
Bonsoir,
Récemment, nous avons mis en place un formulaire permettant d'automatiser certaines actions au sein de notre forum. Cependant, lors du développement des formulaires, nous nous sommes pas aperçus d'un problème qui vient de nous être rapporté. En effet, le script utilisé pour récupérer les variables de FA donné par Ea :
provoque un problème d'encodage avec certains caractères accentués :
Auriez-vous une astuce à me proposer pour corriger "simplement" ce désagrément ?
En vous remerciant par avance,
Xoumi.
Récemment, nous avons mis en place un formulaire permettant d'automatiser certaines actions au sein de notre forum. Cependant, lors du développement des formulaires, nous nous sommes pas aperçus d'un problème qui vient de nous être rapporté. En effet, le script utilisé pour récupérer les variables de FA donné par Ea :
- Code:
<script type="text/javascript" src="http://tinyurl.com/var-fa"></script>
provoque un problème d'encodage avec certains caractères accentués :
Auriez-vous une astuce à me proposer pour corriger "simplement" ce désagrément ?
En vous remerciant par avance,
Xoumi.
Bipo- Rédactif
- Messages : 3756
Inscrit(e) le : 23/09/2010
Re: Problème encodage variables {User} page HTML
Bonjour Xoumi,
J'ai envoyé un MP à Ea pour qu'il regarde à votre demande.
Cordialement.
J'ai envoyé un MP à Ea pour qu'il regarde à votre demande.
Cordialement.
Re: Problème encodage variables {User} page HTML
Bonjour Chacha,
Merci beaucoup !
Xoumi.
Merci beaucoup !
Xoumi.
Bipo- Rédactif
- Messages : 3756
Inscrit(e) le : 23/09/2010
Re: Problème encodage variables {User} page HTML
Petite question , as quoi vous sert ce script ?
Si c'est pour récupérer le pseudo de l'utilisateur , vous pouvez utiliser ceci pour le nom du personnage .
Si c'est pour récupérer le pseudo de l'utilisateur , vous pouvez utiliser ceci pour le nom du personnage .
- Code:
en js
form.nom.value = _userdata["username"];
- Code:
(as mettre dans le formulaire )
<input name="nom" id="nom"value="" type="hidden">
<!-- Le champ hidden réduira considérablement le risque de modification -->
Re: Problème encodage variables {User} page HTML
Bonjour,
Est-ce que l'encodage de base ( sans template modifié ) est préservé ?
Si pas : c'est normal, le forum l'affiche pour un encodage donné par exemple L\x94vi donc si vous changez en utf-8 qui devrait être L\x93\x34vi (j'invente) ça affichera un caractère erroné.
Maintenant j'hypothétise peut-être une bétise vu que si vous aviez changé ça il y aurait possiblement tout une série d'autre problème ( envoie de message, caractère dans le css, peut-être les feuilles javascripts aussi, ... ).
Sinon comme le dit gendarme si les variables userdata suffisent c'est le truc à utiliser.
Il y a ceci dedans :
Cordialement.
Est-ce que l'encodage de base ( sans template modifié ) est préservé ?
Si pas : c'est normal, le forum l'affiche pour un encodage donné par exemple L\x94vi donc si vous changez en utf-8 qui devrait être L\x93\x34vi (j'invente) ça affichera un caractère erroné.
Maintenant j'hypothétise peut-être une bétise vu que si vous aviez changé ça il y aurait possiblement tout une série d'autre problème ( envoie de message, caractère dans le css, peut-être les feuilles javascripts aussi, ... ).
Sinon comme le dit gendarme si les variables userdata suffisent c'est le truc à utiliser.
Il y a ceci dedans :
- Code:
_userdata["session_logged_in"] = 1;
_userdata["username"] = "Ea";
_userdata["user_id"] = 61324;
_userdata["user_level"] = 2;
_userdata["user_lang"] = "fr";
_userdata["activate_toolbar"] = 1;
_userdata["fix_toolbar"] = 1;
_userdata["notifications"] = 1;
_userdata["avatar"] = "<img src="http://i.imgur.com/tMVnwBj.png" alt="" />";
_userdata["user_posts"] = 22475;
_userdata["user_nb_privmsg"] = 4959;
_userdata["point_reputation"] = 3372;
Cordialement.
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Problème encodage variables {User} page HTML
Hello,
Le Charset d'origine du forum est :
Et j'utilise ce dernier pour toutes les applications sur le forum car, comme tu le sais, nous ne pouvons pas convertir notre forum en UTF8 même si j'ai déjà évoqué ce problème à ForumActif, il y a quelques années quand j'étais dans le Staff. Nous sommes condamnés à avoir un Charset obsolète.
Bref, la solution avec userdata, j'avoue que j'y avais pas pensé et ... que je ne vois pas comment faire. Comment l'intégrer dans mon script donné ci-dessous en hide :
En vous remerciant par avance,
Xoumi.
Le Charset d'origine du forum est :
- Code:
<meta http-equiv="content-type" content="text/html; charset=windows-1252" />
Et j'utilise ce dernier pour toutes les applications sur le forum car, comme tu le sais, nous ne pouvons pas convertir notre forum en UTF8 même si j'ai déjà évoqué ce problème à ForumActif, il y a quelques années quand j'étais dans le Staff. Nous sommes condamnés à avoir un Charset obsolète.
Bref, la solution avec userdata, j'avoue que j'y avais pas pensé et ... que je ne vois pas comment faire. Comment l'intégrer dans mon script donné ci-dessous en hide :
En vous remerciant par avance,
Xoumi.
Bipo- Rédactif
- Messages : 3756
Inscrit(e) le : 23/09/2010
Re: Problème encodage variables {User} page HTML
Soucis identique car même encodage avec l'emploi du script dans certains formulaires.
Re: Problème encodage variables {User} page HTML
On pourrait mettre _userdata['username'] à la place de document.getElementById('pseudo').value
Ou si on désire modifier le champ pour afficher le pseudo, mettre :
Cordialement.
Ou si on désire modifier le champ pour afficher le pseudo, mettre :
- Code:
jQuery(function(){
document.getElementById('pseudo').value = _userdata['username'] ;
});
Cordialement.
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Problème encodage variables {User} page HTML
Hello,
Alors :
Cela fonctionne parfaitement, le pseudo récupéré par le formulaire est publié sans problème d'encodage.
Par contre :
Cela permet de corriger l'affichage du pseudo dans l'input visible. Cependant, il reste des problèmes d'encodage dans le pseudo affiché par :
et
Alors :
- Code:
_userdata['username'] à la place de document.getElementById('pseudo').value
Cela fonctionne parfaitement, le pseudo récupéré par le formulaire est publié sans problème d'encodage.
Par contre :
- Code:
jQuery(function(){
document.getElementById('pseudo').value = _userdata['username'] ;
});
Cela permet de corriger l'affichage du pseudo dans l'input visible. Cependant, il reste des problèmes d'encodage dans le pseudo affiché par :
- Code:
<span class="USERNAME"></span>
et
- Code:
<input value="Demande d'ouverture de compte de " name="subject" class="USERNAME" type="hidden" />
Bipo- Rédactif
- Messages : 3756
Inscrit(e) le : 23/09/2010
Re: Problème encodage variables {User} page HTML
Peut-être essayer :
Et mettre un script comme ceci qui remplacera les {{variable_useradata}} des balises ayant la classe _ud :
<span class="_ud">{{username}}</span>
<input value="Demande d'ouverture de compte de {{username}}" name="subject" class="_ud" type="hidden" />
Et mettre un script comme ceci qui remplacera les {{variable_useradata}} des balises ayant la classe _ud :
- Code:
$(function(){
var r = /\{\{\s*[a-zA-Z_]+\s*\}\}/g, f = function(s){
var v, m = s.match(r);
if(!m.length) return s;
for(var i= 0; i<m.length; i++) {
v= m[i].substr(2, m[i].length-4).trim();
if(v in _userdata)
m[i]= _userdata[v];
}
var p = s.split(r);
s = p[0];
for(var i= 1; i < p.length; i++)
s += m[i-1] + p[i];
return s;
};
$('._ud').each(function(){
var v;
if((v = $(this).val()) && v.indexOf('}}')!=-1)
$(this).val(f(v));
if((v = $(this).html()) && v.indexOf('}}')!=-1)
$(this).html(f(v));
});
});
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Problème encodage variables {User} page HTML
Et bien tout fonctionne parfaitement !
Je te remercie beaucoup pour l'aide que tu as apporté à notre forum. Heureusement que tu es là pour adapter nos scripts à notre vieux Charset tout pourri !
Avant de passer ce sujet en résolu, je souhaiterai avoir ton avis sur un point. En tant qu'expert en la matière, est-ce que tu penses que techniquement, un forum ayant un vieux Charset peut adopter un nouveau encodage pour être viable avec l'évolution des NTIC et notamment des normes du Web ?
En te remerciant par avance,
Xoumi.
Je te remercie beaucoup pour l'aide que tu as apporté à notre forum. Heureusement que tu es là pour adapter nos scripts à notre vieux Charset tout pourri !
Avant de passer ce sujet en résolu, je souhaiterai avoir ton avis sur un point. En tant qu'expert en la matière, est-ce que tu penses que techniquement, un forum ayant un vieux Charset peut adopter un nouveau encodage pour être viable avec l'évolution des NTIC et notamment des normes du Web ?
En te remerciant par avance,
Xoumi.
Bipo- Rédactif
- Messages : 3756
Inscrit(e) le : 23/09/2010
Re: Problème encodage variables {User} page HTML
Je ne suis pas un expert en la matière, mais pour qu'un forum change d'encodage il serait nécessaire de convertir le windows-1252 en utf-8 ( donc chaque champ texte de la base de donnée, pour ce forum ça prendrait donc au moins 700 000 conversions en comptant juste les pseudo et les messages ).
Qui plus est si il est possible d'utiliser des caractères n'existant pas en windows-1252, c'est grâce aux séquences html du style ֆ mais ça je ne sais pas à quel point ça serait compliqué de les convertir en utf-8 pure ( et si il y en a besoin ).
Il y a peut-être d'autres problèmes que je ne connais pas, je sais que forumactif travaillait à convertir tout les forums il y a quelques années mais vu que ce n'est pas encore fait je vois peu de chance que ça arrive bientôt.
Sinon pour le problème de ce sujet, j'ai testé sur un forum de test avec l'ancien encodage et un pseudo 한正日 s'affiche bien : https://i.imgur.com/RrryM5W.png ( http://kishh.forum.st/h41-areazeaa ).
Cordialement.
Qui plus est si il est possible d'utiliser des caractères n'existant pas en windows-1252, c'est grâce aux séquences html du style ֆ mais ça je ne sais pas à quel point ça serait compliqué de les convertir en utf-8 pure ( et si il y en a besoin ).
Il y a peut-être d'autres problèmes que je ne connais pas, je sais que forumactif travaillait à convertir tout les forums il y a quelques années mais vu que ce n'est pas encore fait je vois peu de chance que ça arrive bientôt.
Sinon pour le problème de ce sujet, j'ai testé sur un forum de test avec l'ancien encodage et un pseudo 한正日 s'affiche bien : https://i.imgur.com/RrryM5W.png ( http://kishh.forum.st/h41-areazeaa ).
Cordialement.
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Problème encodage variables {User} page HTML
Merci beaucoup pour tes précisions sur le problème soulevé. Je pense que je vais rédiger un courrier à ForumActif pour connaître sa position à ce sujet. J'avoue que c'est quand même inquiétant sur le devenir des vieux forums.
En regardant moi-même la page en tant qu'invité, le problème d'encodage demeure : https://i.servimg.com/u/f39/11/01/36/00/17-07-11.png .
Je passe donc ce sujet en résolu. Je te remercie, encore une fois, pour l'aide apportée.
Bien cordialement,
Xoumi.
En regardant moi-même la page en tant qu'invité, le problème d'encodage demeure : https://i.servimg.com/u/f39/11/01/36/00/17-07-11.png .
Je passe donc ce sujet en résolu. Je te remercie, encore une fois, pour l'aide apportée.
Bien cordialement,
Xoumi.
Bipo- Rédactif
- Messages : 3756
Inscrit(e) le : 23/09/2010
Sujets similaires
» mettre {USERNAME} dans une page HTML
» Text Input "{USERNAME}" dans une page HTML vierge.
» Les variables USER
» Modification de l'affichage des groupes (Variables user et group)
» Problème entre une page html en page d'accueil et l'adresse de base du forum
» Text Input "{USERNAME}" dans une page HTML vierge.
» Les variables USER
» Modification de l'affichage des groupes (Variables user et group)
» Problème entre une page html en page d'accueil et l'adresse de base du forum
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum