Passez @lex Guestbook en utf-8

Pour vos questions au sujet de la personnalisation du script, des skins... - About customizing the script.

Modérateurs : boulmontjj, Pierre G., Malabar, Otomatic

Règles du forum
Pensez à effectuer une recherche et à consulter la FAQ, la réponse à votre question a de grandes chances d'avoir déjà été donnée ;-).
Dans votre message, n'oubliez pas de mentionner l'URL vers votre livre d'or, cela nous permet de vous aider bien plus efficacement :super:.
Charly406
Messages : 2
Inscription : Dim 05 Avr 2015, 13:54

Re: Passez @lex Guestbook en utf-8

Messagepar Charly406 » Dim 05 Avr 2015, 14:14

Bonjour,
j'ai un petit souci après le passage en UTF-8.
Pour un message donnée, dans la partie où s'affiche le nom de la personne ayant posté le message, il y a l'image d'une enveloppe qui s'affiche lorsque la personne à saisi une adresse e-mail. En passant la souris sur l'enveloppe, un tooltip devrait s'afficher avec le texte "Envoyer un courriel à <nom> [<email>].
Or le caractère 'à' et les éventuels caractères accentués de <nom> ne s'affiche pas correctement.

Cette partie est généré par la fonction

Code : Tout sélectionner

function  encodeEmail($email)
de funct_utiles.php. Si je mets entre commentaires la partie

Code : Tout sélectionner

//   $email = chunk_split (bin2hex($email ),2, '%');
//   $email = '%'. substr($email ,0, strlen($email )-1);
//   $email = chunk_split ($email, 54,"'+\n'" );
//   $email = substr($email ,0, strlen($email )-4);

le texte généré est bon (i.e. avec les accents) dans les sources (code source de la page).
Avez-vous le même problème ou ai-je raté une étape ?

Otomatic
Modérateur
Modérateur
Messages : 724
Inscription : Ven 11 Août 2006, 09:33
Localisation : Paris
Contact :

Re: Passez @lex Guestbook en utf-8

Messagepar Otomatic » Dim 05 Avr 2015, 18:29

Bonjour,

Vous n'avez pas raté une étape. C'est moi qui en ai oublié une.
Je viens juste de voir ce problème. A priori, chaîne encodée utf-8 interprété comme iso-8859-1.
Je regarde...
Ce n'est pas par ce que l'erreur se propage qu'elle devient vérité. Gandhi

Otomatic
Modérateur
Modérateur
Messages : 724
Inscription : Ven 11 Août 2006, 09:33
Localisation : Paris
Contact :

Re: Passez @lex Guestbook en utf-8

Messagepar Otomatic » Dim 05 Avr 2015, 18:47

Re-bonjour,

Ça va être un peu plus long que je le prévoyais. Les fonctions escape et unescape Javascript ne fonctionnent pas avec utf-8 et, en plus, sont obsolètes.
Ce n'est pas par ce que l'erreur se propage qu'elle devient vérité. Gandhi

Otomatic
Modérateur
Modérateur
Messages : 724
Inscription : Ven 11 Août 2006, 09:33
Localisation : Paris
Contact :

Re: Passez @lex Guestbook en utf-8

Messagepar Otomatic » Dim 05 Avr 2015, 19:09

Bonjour,

Dans le fichier livre_or\include\funct_utiles.php remplacer :

Code : Tout sélectionner

   $email = substr($email ,0, strlen($email )-4);
   $email = "<script type=\"text/javascript\">\n<!--\neval(unescape( \n'$email'));\n//-->\n</script>";
par

Code : Tout sélectionner

   $email = substr($email ,0, strlen($email )-4);
   //[modif oto] - Pour décodage utf-8 remplacer unescape par decodeURIcomponent
   $email = "<script type=\"text/javascript\">\n<!--\neval(decodeURIComponent( \n'$email'));\n//-->\n</script>";

Et voilou :siffle: en espérant que ce sera pérenne :pausecaffé:
Ce n'est pas par ce que l'erreur se propage qu'elle devient vérité. Gandhi

Charly406
Messages : 2
Inscription : Dim 05 Avr 2015, 13:54

Re: Passez @lex Guestbook en utf-8

Messagepar Charly406 » Sam 11 Avr 2015, 12:06

:super:

Schmol44
Messages : 92
Inscription : Mar 31 Juil 2007, 09:53
Localisation : Nantes
Contact :

Re: Passez @lex Guestbook en utf-8

Messagepar Schmol44 » Ven 25 Jan 2019, 16:02

Bonjour et merci pour cet excellent tuto que je viens d'appliquer à mon livre d'or, pour l'instant en php 6.
Je n'ai pas encore appliqué les modifs de la base de données.

Par contre, Je n'ai pas compris la dernière manip à effectuer:
Modifier le fichier mon_livre_or\add_message.php pour que les envois des deux types de messages sont bien précisés en utf-8, donc, deux fois :
Code : Tout sélectionner
après, je fais quoi ?
$entetemail .= "Content-type: text/plain; charset=utf-8\r\n";


Par contre, malgré avoir effectué ce qui précède dans le tuto, j'ai des points ? sur les messages enregistrés.
D'avance merci pour la réponse.
Schmol44

Otomatic
Modérateur
Modérateur
Messages : 724
Inscription : Ven 11 Août 2006, 09:33
Localisation : Paris
Contact :

Re: Passez @lex Guestbook en utf-8

Messagepar Otomatic » Ven 25 Jan 2019, 17:07

Bonjour,

Il existe une version 5.0.6 utf-8 toute prête.
Voir
viewtopic.php?f=1&t=3272&p=16871&hilit=agb_utf8.zip#p16871
et éventuellement :
viewtopic.php?f=1&t=3282
Ce n'est pas par ce que l'erreur se propage qu'elle devient vérité. Gandhi


Revenir vers « Personnalisation - tuning »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Bing [Bot] et 6 invités