PHP, mail(), et caractères spéciaux!
Fermé
phédra60
Messages postés
30
Date d'inscription
mardi 6 février 2007
Statut
Membre
Dernière intervention
24 mai 2008
-
19 oct. 2007 à 18:14
petite fée - 17 mai 2010 à 17:56
petite fée - 17 mai 2010 à 17:56
A voir également:
- É en php
- É - Guide
- Easy php - Télécharger - Divers Web & Internet
- Configuration astra 19.2 e - Forum TNT / Satellite / Réception
- E mule - Télécharger - Téléchargement & Transfert
- Realtek 8821ce wireless lan 802.11ac pci-e nic - Forum Pilotes (drivers)
13 réponses
phédra60
Messages postés
30
Date d'inscription
mardi 6 février 2007
Statut
Membre
Dernière intervention
24 mai 2008
17
22 oct. 2007 à 18:19
22 oct. 2007 à 18:19
Ca n'a pas marché! Voici mon script de test:
J'ai aussi essayé sans "\r\n" après UTF8_FR.
Il y a-t-il une erreur?
$to=xxxxx@xxxxx.xx"; // Ici, j'ai caché le mail pour m'éviter le spamming... $sujet="Facile..."; $message="Test réussi!"; $headers="From: Me Machin <xxxxx@xxxxx.xx>\r\n Content-Type: text/plain; charset='UTF8_FR'\r\n"; // Mail caché ici aussi. if(mail ($to, $sujet, $message, $headers)) { echo "Mail envoyé!"; }
J'ai aussi essayé sans "\r\n" après UTF8_FR.
Il y a-t-il une erreur?
phédra60
Messages postés
30
Date d'inscription
mardi 6 février 2007
Statut
Membre
Dernière intervention
24 mai 2008
17
25 oct. 2007 à 21:15
25 oct. 2007 à 21:15
Bonjour!
N'y a-t-il plus personne pour éviter un humble débutant en envoi de mails grâce à la fonction PHP mail() ?
Je vous rapelle la situation: j'aimerai pouvoir envoyer des mails au format texte uniquement, pas au format HTML, ceci étant refusé par des serveurs mails et/ou des utilisateurs. Malheureusement, les caractères spéciaux ne passent pas dans le mail reçu par le destinataire.
Vivien.
N'y a-t-il plus personne pour éviter un humble débutant en envoi de mails grâce à la fonction PHP mail() ?
Je vous rapelle la situation: j'aimerai pouvoir envoyer des mails au format texte uniquement, pas au format HTML, ceci étant refusé par des serveurs mails et/ou des utilisateurs. Malheureusement, les caractères spéciaux ne passent pas dans le mail reçu par le destinataire.
Vivien.
bonsoir, je me permet de répondre à ce sujet qui je l'avoue commence à dater mais vu que je l'ai trouvé et que j'avais le même problème aujourd'hui même et qu'il n'y à pas vraiment de conclusion positive concernant la première question.
Pour ceux qui cherchent encore, voici ce que j'utilise désormais et qui pour le moment répond à ce problème (sauf contre-avis des spécialistes (que je ne suis pas)).
Deux choses importantes :
I. définir l'encodage du site en ut8, cela vous demandera quelques contraintes avec le texte de votre site directement rédigé dans le code html et php -> remplacer les é par &e acute; (sans l'espace) et ainsi de suite.. C'est une habitude à prendre.
- entre les balises <head></head> : <meta http-equiv="content-type" content="text/html; charset=utf-8" />
II. Deuxièmement utiliser la fonction utf8_decode() (l'inverse : utf8_encode())
<?php
$to = 'you@mail.fr';
$head = 'From: me@mail.fr';
$topic = 'vîvä utf8_ëncôdè';
$topic = utf8_decode($topic);
$msg = 'éàçôùèêâïë...';
$msg = utf8_decode($msg);
mail($to, $topic, $msg, $head);
?>
Si vous avez mieux.. en espérant m'être rendu utile
bon code,
Pour ceux qui cherchent encore, voici ce que j'utilise désormais et qui pour le moment répond à ce problème (sauf contre-avis des spécialistes (que je ne suis pas)).
Deux choses importantes :
I. définir l'encodage du site en ut8, cela vous demandera quelques contraintes avec le texte de votre site directement rédigé dans le code html et php -> remplacer les é par &e acute; (sans l'espace) et ainsi de suite.. C'est une habitude à prendre.
- entre les balises <head></head> : <meta http-equiv="content-type" content="text/html; charset=utf-8" />
II. Deuxièmement utiliser la fonction utf8_decode() (l'inverse : utf8_encode())
<?php
$to = 'you@mail.fr';
$head = 'From: me@mail.fr';
$topic = 'vîvä utf8_ëncôdè';
$topic = utf8_decode($topic);
$msg = 'éàçôùèêâïë...';
$msg = utf8_decode($msg);
mail($to, $topic, $msg, $head);
?>
Si vous avez mieux.. en espérant m'être rendu utile
bon code,
ilan27
Messages postés
394
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
15 juin 2009
36
19 oct. 2007 à 18:21
19 oct. 2007 à 18:21
Bonsoir, est-ce que tes caractères spéciaux que tu envoies sont du type deschiffres ?
Sinon, je crois qu'ils ne sont pas interprétés.
Sinon, je crois qu'ils ne sont pas interprétés.
phédra60
Messages postés
30
Date d'inscription
mardi 6 février 2007
Statut
Membre
Dernière intervention
24 mai 2008
17
19 oct. 2007 à 18:26
19 oct. 2007 à 18:26
Ben, en fait quand je dis "caractères spéciaux", je parle des "é", des "à", etc...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
phédra60
Messages postés
30
Date d'inscription
mardi 6 février 2007
Statut
Membre
Dernière intervention
24 mai 2008
17
19 oct. 2007 à 21:17
19 oct. 2007 à 21:17
Que veux-tu dire par ils ne sont pas interprêtés? Comment faire en sorte qu'ils le soient? Les caractères spéciaux du type suivis de chiffres sont de quel charset (je crois que c'est comme ça qu'on dit) ? Et vous autres, pouvez-vous m'aider?
Vivien.
Vivien.
ilan27
Messages postés
394
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
15 juin 2009
36
20 oct. 2007 à 21:31
20 oct. 2007 à 21:31
Je pensais que c'était des caractères d'une autre langue, mais si ce n'est que des 'é' etc...
code les ainsi:
é=é
à=à
è=è
ù=ù
ï=ï
ê=ê
â=â
ë=ë
Et vous autres, pouvez-vous m'aider? ... sympa, je suis là moi! ^^
code les ainsi:
é=é
à=à
è=è
ù=ù
ï=ï
ê=ê
â=â
ë=ë
Et vous autres, pouvez-vous m'aider? ... sympa, je suis là moi! ^^
phédra60
Messages postés
30
Date d'inscription
mardi 6 février 2007
Statut
Membre
Dernière intervention
24 mai 2008
17
22 oct. 2007 à 17:03
22 oct. 2007 à 17:03
Bonjour,
Une autre idée?
P.S.: @ilan27 > Ce que t'es susceptible! ^^ Je voulais simplement essayer de rameuter du monde! Quoi? Ca n'a pas été efficace? J'crois bien qu't'as raison... ^^
@tout le monde: désolé pour la forme du message, je n'ai pas réussi à faire autrement pour garder é sous cette forme et non transformé en "é"...
Vivien.
éet compagnie, bref les codes HTML (si je ne me trompe, c'est bien ça?), ne fonctionnent pas. En fait, comme il arrive régulièrement que les mails HTML soient refusés par les serveurs mails ou tout simplement par les utilisateurs à travers leurs réglage de leur boite mail, j'aimerai savoir envoyer un mail en PHP au format texte, pas au format HTML. J'y arrive, mais, du coup, les codes HTML ne fonctionnent pas pour les caractères spéciaux. J'ai essayé plusieurs autres types de codes pour caractères spéciaux, come Unicode, et d'autres dont je ne me souviens plus, trouvés sur CCM et d'autres sites, mais ça n'a pas marché.
Une autre idée?
P.S.: @ilan27 > Ce que t'es susceptible! ^^ Je voulais simplement essayer de rameuter du monde! Quoi? Ca n'a pas été efficace? J'crois bien qu't'as raison... ^^
@tout le monde: désolé pour la forme du message, je n'ai pas réussi à faire autrement pour garder é sous cette forme et non transformé en "é"...
Vivien.
phédra60
Messages postés
30
Date d'inscription
mardi 6 février 2007
Statut
Membre
Dernière intervention
24 mai 2008
17
23 oct. 2007 à 17:02
23 oct. 2007 à 17:02
Bonjour à tous! (Re-bonjour... ^^)
Alors, personne pour m'aider? Moi je sèche... J'ai essayé de changé la casse de UTF8_FR, ça a pas marché...
Vivien.
Alors, personne pour m'aider? Moi je sèche... J'ai essayé de changé la casse de UTF8_FR, ça a pas marché...
Vivien.
phédra60
Messages postés
30
Date d'inscription
mardi 6 février 2007
Statut
Membre
Dernière intervention
24 mai 2008
17
24 oct. 2007 à 17:29
24 oct. 2007 à 17:29
Bonjour à tous!
HELP! Je nage, je rame! Qui pourra m'aider?
Je rappelle mon problème: les caractères spéciaux (é, è , etc...) ne passent pas lorsque j'envoie un mail avec la fonction mail() en PHP. Mon script est réécrit dans un post un peu plus haut. On m'a proposé UTF8_FR, mais ça fonctionne pas. Je l'utilise peut-être mal, je sais pas. Pour info, j'utilise EasyPHP pour mes progs.
Vivien.
HELP! Je nage, je rame! Qui pourra m'aider?
Je rappelle mon problème: les caractères spéciaux (é, è , etc...) ne passent pas lorsque j'envoie un mail avec la fonction mail() en PHP. Mon script est réécrit dans un post un peu plus haut. On m'a proposé UTF8_FR, mais ça fonctionne pas. Je l'utilise peut-être mal, je sais pas. Pour info, j'utilise EasyPHP pour mes progs.
Vivien.
vas voir ce site, il y a peut être la solution:
https://www.developpez.net/forums/d426642/php/langage/mail-probleme-caracteres-accentues/
https://www.developpez.net/forums/d426642/php/langage/mail-probleme-caracteres-accentues/
phédra60
Messages postés
30
Date d'inscription
mardi 6 février 2007
Statut
Membre
Dernière intervention
24 mai 2008
17
24 oct. 2007 à 20:02
24 oct. 2007 à 20:02
Non, il y a pas la solution! Tu m'as envoyé vers un sujet qui correspondait, mais l'auteur a résolu son problème mais en passant son mauil de format text à HTML, et je veux justement éviter de passer par le format HTML.
Merci quand même Alain42!
Vivien.
Merci quand même Alain42!
Vivien.