TinyButStrong - the PHP Template Engine
Categories > TinyButStrong general (FR) >

pb de charset dans un block, contourné

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs

By: Jurvillier
Date: 2016-02-27
Time: 12:54

pb de charset dans un block, contourné

Comportement curieux, contourné, mais incompris (PHP5, TBS 3.10)
Recherche de prénoms  dans une table mysql en latin1_general_ci
un print du tableau,en encodage occidental dans le navigateur rend bien "André",
(pas de meta utf8 dans la page),
par contre dans le block , les prénoms avec accents ne sont carrément pas affichés (vide), les autres oui.
Je contourne avec strconv=no dans le champ du block.
Je n'étais pas obligé de faire ainsi en PHP4 TBS 3.1.
Un strconv=utf8 fonctionne aussi, en changeant l'encodage à l'affichage, évidemment.
By: Jurvillier
Date: 2016-02-29
Time: 12:26

Re: pb de charset dans un block, contourné

En fait, le pb rapporté par erreur dans le forum anglais, du message d'erreur parfois vide, est lié à la même chose.
Si le message contient des lettres accentuées, il devient vide. strconv=no corrige le pb.
By: Skrol29
Date: 2016-03-01
Time: 00:46

Re: pb de charset dans un block, contourné

ok
By: Jurvillier
Date: 2016-03-01
Time: 00:58

Re: pb de charset dans un block, contourné

j'ai encore cherché mais je n'ai toujours pas trouvé ce qui peut  provoquer ce comportement bizarre.
D'autant que le prog. réduit auquel je passe des messages avec ou sans lettres accentuées ne reproduit pas ce comportement anormal.
As tu une piste ?
By: Skrol29
Date: 2016-03-01
Time: 01:01

Re: pb de charset dans un block, contourné

Si tu as mis des commentaires avec des accents dans ton code, alors PHP a pu considérer que c'était du UTF8 et non plus de l'Ascii (ou inversement), et du coup le traitement des chaînes a pu changer.
Le support renforcé d'UTF8 fait partie des nouveautés importantes de PHP 5 (à l'époque).