Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Le bon charset...

166 réponses
Avatar
METIS
Bonjour,
comme je ne suis pas un codeur fou, j'utilise Dreamweaver pour composer mes
pages (et non pas Bloc-notes(;o))).
Par défaut, le charset est...
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Est-ce que c'est pertinent (en général) ?
Vous allez me dire que ça dépend...?
(;o)))))))))

--
<|[;o)) METIS
http://www.graphM.com
Pour m'écrire en privé,
moi c'est metis15 et
je tourne à l'Oranges...

10 réponses

Avatar
Michael DENIS
METIS a écrit :
Mais moi, avec mes hébergements mutualisés OVH, je n'ai pas accès
directement à l'entête HTTP, ou alors je ne sais pas y aller.



Je fais de l'envoi de mail comme vous sur plusieurs hébergements
mutualisés Ovh sans soucis (et en utf-8). Vous devriez donc pouvoir y
arriver.

Voilà, avec ça, tout en UTF-8 (l'entête HTTP étant en UTF-8 logiquement?),
l'email que je reçois donne...



Je pense que si vous postiez le source du mail, cela permettrait
peut-être de mieux comprendre ce qui ne va pas (le format du mail ou
le(s) lecteur(s)).

--
Michaël DENIS
Avatar
SAM
Le 12/15/08 10:03 AM, METIS a écrit :
Olivier Miakinen wrote:
Name: windows-1252



Donc moi, ça met windows-1250...



Ouais ... une erreur de frappe ?
(tu es sûr qu'on est en Europe *centrale* ? C'est pas la Russie cette
zone ?)


Dites voir les codeurs fous d'ici,
vous n'écrivez quand même pas toutes vos pages avec un Bloc-Notes...?



Ben si !

C'est encore comme ça qu'on perd le moins de temps !

(avant d'avoir fait le tour de tous les panneaux de DW qui, en plus aime
bien faire à son idée ... à la main y a longtemps que c'est fini)

Comment faites-vous ?



Je suppose qu'on utilise un éditeur-texte à syntaxe colorée pour
minimiser les erreurs.
Et si en plus il connait le HTML et les CSS ce n'est que mieux ;-)

Mébon ... le sujet a été débattu maintes fois ...
Moi j'utilise BBEdit (ça n'existe que pour Mac)

Les autres ils se servent d'Emacs ou de Vi, des fois Vim, et font faire
le boulot par le serveur et la BdD associée.
Des faignasses quoi ! ;-)

PS : Je ne retrouve pas comment on voit l'entête HTTP...



de quoi l'entête ?
celle envoyée par le serveur ?

chez Orange, en pages-perso, c'est "text/hml"
sans charset ... il faut bien penser au meta

sinon je pense que le serveur Orange est en iso-8859-1 ou -15

C'est WebDeveloper, extension pour Firefox qui te donnera l'en-tête.

--
sm
Avatar
SAM
Le 12/15/08 12:50 PM, Olivier Miakinen a écrit :
Le 15/12/2008 09:57, METIS a écrit :
Actuellement, j'envoie avec ça :
http://cjoint.com/?mpkP7KIILS



http://cjoint.com/data/mpkP7KIILS_php_envoi_email.txt

L'image devient à peu près nette en UTF-16 petit-boutiste, et il
s'affiche alors :
[...] éventuellement suivis d'entętes mails [...]
et aussi :
[...] les champs ŕ vérifier [...]

???




Oui, mais là, ce n'est peut-être pas la faute à Metis ?
Je vois comme header de cJoint :

Vary: Accept-Encoding,User-Agent
Content-Encoding: gzip
Content-Length: 1475
Content-Type: text/plain

--
sm
Avatar
Pascale
"METIS" écrivait
news:49465a64$0$857$:

Heu voui... tu fais rien de spécial ?
C'est ton code qui veut ça ??



Ben non, rien, sauf qu'on vérifie que la personne donne une adresse
courriel qui ressemble à une adresse courriel et un nom (ou un pseudo). Le
code, c'est du bête PHP.

--
Pascale
Avatar
METIS
TJ wrote:
On 2008-12-15, METIS wrote:
_envoi.php_
<?php
//header('Content-Type: text/html; charset=ISO-8859-1');
//header('Content-Type: text/html; charset=ISO-Latin-1');
header('Content-Type: text/html; charset=UTF-8');

extract($_POST,EXTR_OVERWRITE);
if(isset($_POST['captchaResult']))
{
session_start();
$_POST['captchaResult'] = strtolower($_POST['captchaResult']);
$_SESSION['captchaResult'] >> strtolower($_SESSION['captchaResult']);
if($_POST['captchaResult'] === $_SESSION['captchaResult']) {
//captcha OK on envoi le message $nom=$HTTP_POST_VARS['nom'];
$mail=$HTTP_POST_VARS['mail'];

/////voici la version Mine
$headers = "MIME-Version: 1.0rn";



Pas forcément utile selon moi vu que tu n'utilise pas ce
mécanisme.

//////ici on détermine le mail en format texte (3 lignes
neutralisees) //$headers .= "Content-type: text/plain;
charset=iso-8859-1rn"; //$headers .= "Content-type:
text/plain; charset=UTF-8rn"; //$headers .= "Content-type:
text/plain; charset=ISO-Latin-1rn";



En revanche là il en manque un (UTF-8 vu que c'est ce que tu
sembles envoyer).



La déclaration en tête, juste après <?php, ne suffit pas ?

////ici on détermine l'expediteur et l'adresse de réponse
$headers .= "From: $nom <$mail>rnReply-to : $nom
<$mail>nX-Mailer:PHP";



^^^^^^^^^^^^ Inutile, mais la vrai question est surtout as-tu
compris pourquoi tu l'as mis ?



Héhé... Je ne code pas.
Je copie/colle, même les conneries (;o))))))

Voilà, avec ça, tout en UTF-8 (l'entête HTTP étant en UTF-8
logiquement?), l'email que je reçois donne...



Tu nous cites le body du mail, mais les headers sont tout autant
intéressant, surtout vu l'historique de ton « problème ».

- avec OutlookExpress sous XP :

Téléphone : test téléphone


^^^

Ton fichier envoi.php ne semble pas codé en UTF-8... Relire les
posts des différents intervenants qui t'ont expliqué *maintes*
fois que déclarer un charset ne suffisait pas, encore faut-il
l'utiliser pour *coder* ses fichiers.



Oui, c'est là que je décroche...
Je ne comprends toujours pas ce que ça veut dire...
Quand j'écris dans des pages avec Dreamweaver, j'écris en quoi, si le
charset est déclaré UTF-8?
On m'en a parlé, mais...
Je ne suis pas sûr qu'on m'ait expliqué ça...

- avec ThunderBird

Téléphone : test téléphone


^^^

Même souci, tu ne déclares pas de charset dans ton mail, donc le
MUA prend celui qui l'arrange (config, ou réglage par défaut), et
visiblement ici il prend de l'ISO, donc ce qui est défini par ton
script envoi.php semble (car on ne peut le vérifier au vu des
éléments que tu fournis) être de l'ISO pour la partie « en dur »
du body du mail. Mais ce que tu complètes avec les données
postées est en UTF8 (car la page du formulaire est déclarée en
UTF8, donc le navigateur poste les données en UTF8).

En espérant que cela t'aide à régler tout ça...



Bé là, ça me laisse un peu perplexe...
Cet exemple est produit avec UTF-8 déclaré partout où je peux déclarer
quelque chose, sauf au niveau entête HTTP car je n'ai pas l'imprssion
d'avoir accès, mais il me semble que c''est UTF-8 par défaut...

--
<|[;o)) METIS
http://www.graphM.com
Pour m'écrire en privé,
moi c'est metis15 et
je tourne à l'Oranges...
Avatar
METIS
TJ wrote:
On 2008-12-15, TJ <tj+ wrote:
////ici on détermine l'expediteur et l'adresse de réponse
$headers .= "From: $nom <$mail>rnReply-to : $nom
<$mail>nX-Mailer:PHP";



^^^^^^^^^^^^ Inutile, mais la vrai question est surtout as-tu
compris pourquoi tu
l'as mis ?



Je vois aussi qu'il semble manquer un r si on suit la même
logique pour tous les headers...

Remarque subsidiaire, à quoi sert le Reply-to: s'il est
identique au From: ?



Faudrait que je retrouve l'auteur, pour qu'on lui demande...

--
<|[;o)) METIS
http://www.graphM.com
Pour m'écrire en privé,
moi c'est metis15 et
je tourne à l'Oranges...
Avatar
METIS
Olivier Miakinen wrote:
Le 15/12/2008 16:11, METIS a écrit :

On m'a dit qu'il fallait déclarer le même charset partout, y
compris dans l'entête HTTP.



On t'a surtout dit de savoir sous quel format tu sauves le
fichier au moment du File/Save ou Fichier/Enregistrer, et c'est
ça que tu sucres à chaque fois.



AH !!! ENFIN UNE INFO QUE JE COMPRENDS !!
(désolé si je crie un peu, mais je suis content de comprendre enfin quelque
chose)
Le problème ici, c'est qu'on a l'impression que vous être entre mecs super
branchés code et le toutim, mais quand vous causez à des gens qui font du
Wysiwyg depuis 10 ans sans trop se faire chier avec ce qu'il y a dernière,
on arrive plus à se comprendre. Tout ceci dit sans acrimonie hein
(;o)))))))))

Bon :
Moi, quand j'écris du HTML ou que je copie/colle du PHP et que je fais
Ctrl+S (Pomme+S(;o))), ça sauve.
Pour moi c'est du code prêt à être lu par un navigateur, point.
C'est sans doute là que je me gourrasse vautrasse dans la fange du codeur de
page avec FrontPage...

Donc comment je sais...
En fait à part que ça mets .htm ou .php à mon fichier, je ne sais pas grand
chose...
J'ai comme l'impression maintenant que ça ne suffit pas...

--
<|[;o)) METIS
http://www.graphM.com
Pour m'écrire en privé,
moi c'est metis15 et
je tourne à l'Oranges...
Avatar
METIS
Michael DENIS wrote:
METIS a écrit :
Voilà, avec ça, tout en UTF-8 (l'entête HTTP étant en UTF-8
logiquement?), l'email que je reçois donne...



Je pense que si vous postiez le source du mail, cela permettrait
peut-être de mieux comprendre ce qui ne va pas (le format du mail
ou le(s) lecteur(s)).



Voilà :

Return-Path:
<bounce-idÓ50=U87632.60gp.ovh.net
Received: from mwinfx2f07.orange.fr (mxwinf2f07.orange.fr)
by mxwinb1c02 (SMTP Server) with LMTP; Mon, 15 Dec 2008 15:37:58 +0100
X-Sieve: Server Sieve 2.2
X-Bcc:
Received: from me-wanadoo.net (localhost [127.0.0.1])
by mwinf2f07.orange.fr (SMTP Server) with ESMTP id 260301C0008A
for ;
Mon, 15 Dec 2008 15:37:58 +0100 (CET)
Received: from 18.mail-out.ovh.net (18.mail-out.ovh.net [213.186.35.30])
by mwinxfx2f07.orange.fr (SMTP Server) with SMTP id 1E17B123456789C00084
for ; Mon, 15 Dec 2008 15:37:58 +0100 (CET)
X-ME-UUID:
Received: (qmail 2301 invoked by uid 0); 15 Dec 2008 14:37:50 -0000
Received: from gw1.ovh.net (HELO 60gp.ovh.net) (213.251.189.201)
by 18.mail-out.ovh.net with SMTP; 15 Dec 2008 14:37:29 -0000
Received: by 60gp.ovh.net (Postfix, from userid 87632)
id C896ABCHGF4B8AE; Mon, 15 Dec 2008 15:37:37 +0100 (CET)
To: ,
Subject: Site xxxxxx Demande de contact
MIME-Version: 1.0
From: test "é" "€" <>
Reply-To: test "é" "€" <>
X-Mailer:PHP
Message-Id:
Date: Mon, 15 Dec 2008 15:37:37 +0100 (CET)
X-me-spamlevel: not-spam
X-me-spamrating: 40.000000
X-me-spamcause: OK,
(0)(0000)gggrugjdgfhjthyugvucftvghtrhhoucdtuddrvdijuoiuopuektddruddvucetgioupgugdotefuucfrrhhofhhilhgvmecuoffgnecuuegrihhlohhuthemuceftddtnecu
X-Antivirus: avast! (VPS 081215-0, 15/12/2008), Inbound message
X-Antivirus-Status: Clean


Contact xxxxxx
Nom : test é €
Prénom : test
Email : test
Téléphone : test téléphone
Objet : test

--
<|[;o)) METIS
http://www.graphM.com
Pour m'écrire en privé,
moi c'est metis15 et
je tourne à l'Oranges...
Avatar
METIS
SAM wrote:
Le 12/15/08 10:03 AM, METIS a écrit :
Olivier Miakinen wrote:
Name: windows-1252



Donc moi, ça met windows-1250...



Ouais ... une erreur de frappe ?
(tu es sûr qu'on est en Europe *centrale* ? C'est pas la Russie
cette zone ?)



A voir ici :
http://img261.imageshack.us/my.php?image=prefdw1250oz6.gif

Europe occidentale, ça met charset=iso-8859-1
Europe centrale (windows), ça met charset=windows-1250
Europe centrale (ISO), ça met charset=iso-8859-2
Europe centrale (DOS), ça met charset=ibm852

C'est tout, après ce sont des langues, hébreu, chinois, arabe...

Dites voir les codeurs fous d'ici,
vous n'écrivez quand même pas toutes vos pages avec un
Bloc-Notes...?



Ben si !
C'est encore comme ça qu'on perd le moins de temps !



Hé vouai...
Donc moi, c'est wysiwyg ou je retourne au bac à sable.

(avant d'avoir fait le tour de tous les panneaux de DW qui, en
plus aime bien faire à son idée ... à la main y a longtemps que
c'est fini)



Ah... tu connais pas Micro$oft FrontPage alors !!!
(;o))))))))

PS : Je ne retrouve pas comment on voit l'entête HTTP...



de quoi l'entête ?
celle envoyée par le serveur ?



Pfffff... je ne comprends plus rien...

chez Orange, en pages-perso, c'est "text/hml"
sans charset ... il faut bien penser au meta



Bé dans mon fichier contact.php, il y a bien une balise META
Dans le envoi.php (php pur) il y a un header...
Et ça ne suffit pas donc ?
A part enregistrer, il y a une autre manip ?
Mais quoi ?

sinon je pense que le serveur Orange est en iso-8859-1 ou -15

C'est WebDeveloper, extension pour Firefox qui te donnera
l'en-tête.



Ca, qui vient de Orange :
De :
"test é €" <unspecified-domain>
Corps :
Contact xxxxxx
Nom : test é €
Pr�nom : test
Email : test
T�l�phone : test téléphone
Objet : test

...a cet entête :

Date: Mon, 15 Dec 2008 19:36:32 GMT
Server: Apache
Cache-Control: no-store
Pragma: no-cache
Expires: Thu, 01 Dec 1994 16:00:00:GMT
Content-Length: 53251
Keep-Alive: timeout, max–
Connection: Keep-Alive
Content-Type: text/html;charset=UTF-8
200 OK

Ca te cause ??

(J'envoie en Unicode pour conserver les caractères bizarres)

--
<|[;o)) METIS
http://www.graphM.com
Pour m'écrire en privé,
moi c'est metis15 et
je tourne à l'Oranges...
Avatar
TJ
On 2008-12-15, METIS wrote:
On 2008-12-15, METIS wrote:
_envoi.php_
<?php
header('Content-Type: text/html; charset=UTF-8');

//////ici on détermine le mail en format texte (3 lignes
neutralisees) //$headers .= "Content-type: text/plain;
charset=iso-8859-1rn"; //$headers .= "Content-type:
text/plain; charset=UTF-8rn"; //$headers .= "Content-type:
text/plain; charset=ISO-Latin-1rn";



En revanche là il en manque un (UTF-8 vu que c'est ce que tu
sembles envoyer).



La déclaration en tête, juste après <?php, ne suffit pas ?



Non cela ne concerne pas le mail mais ta page envoi.php. Tu fais ce
qu'il faut pour la page accédée en HTTP (dans ton navigateur), mais pas
pour le mail (lu dans le mailer qui a aussi besoin de connaître le
charset).

Téléphone : test téléphone


^^^

Ton fichier envoi.php ne semble pas codé en UTF-8... Relire les
posts des différents intervenants qui t'ont expliqué *maintes*
fois que déclarer un charset ne suffisait pas, encore faut-il
l'utiliser pour *coder* ses fichiers.



Oui, c'est là que je décroche...
Je ne comprends toujours pas ce que ça veut dire...
Quand j'écris dans des pages avec Dreamweaver, j'écris en quoi, si le
charset est déclaré UTF-8?
On m'en a parlé, mais...
Je ne suis pas sûr qu'on m'ait expliqué ça...



D'autres intervenants te l'ont déjà dit, plusieurs fois, tu déclares
le charset (ça c'est ok) mais il faut *enregistrer* le fichier avec ce
charset (visiblement ce n'est pas le cas avec envoi.php). Pour le faire
je te laisse te reporter au manuel de Dreamweaver car je n'utilise pas.

- avec ThunderBird

Téléphone : test téléphone


^^^

Même souci, tu ne déclares pas de charset dans ton mail, donc le
MUA prend celui qui l'arrange (config, ou réglage par défaut), et
visiblement ici il prend de l'ISO, donc ce qui est défini par ton
script envoi.php semble (car on ne peut le vérifier au vu des
éléments que tu fournis) être de l'ISO pour la partie « en dur »
du body du mail. Mais ce que tu complètes avec les données
postées est en UTF8 (car la page du formulaire est déclarée en
UTF8, donc le navigateur poste les données en UTF8).

En espérant que cela t'aide à régler tout ça...



Bé là, ça me laisse un peu perplexe...
Cet exemple est produit avec UTF-8 déclaré partout où je peux déclarer



Sauf qu'une partie de ton mail est en iso-8859-1, la partie qui vient
de envoi.php, là où tu as écris "Téléphone :", il faut enregistrer ce
fichier en utf-8. Olivier (entre autres) t'as déjà souligné ce problème
depuis plusieurs jours, actuellement tu continues à mélanger les codage,
donc quoi que tu déclares tu auras le soucis...

quelque chose, sauf au niveau entête HTTP car je n'ai pas l'imprssion
d'avoir accès, mais il me semble que c''est UTF-8 par défaut...



S'il n'y en a pas c'est le navigateur qui décide, en s'aidant
éventuellement de ce qu'il trouve dans les meta.

Cela dit, même si je n'ai pas tous les éléments, et que tu sembles
avoir retourné tes scripts dans tous les sens, je reste persuadé qu'il
suffit d'enregistrer ton fichier envoi.php en UTF-8 pour régler ton
problème, ou, si c'est déjà fait tu as de l'iso-8859-1 qui est resté tel
quel (qui n'a pas été recodé correctement) dans ce fichier envoi.php.


/me qui espère mettre un terme à ce fil, sauvons les octets :P