Utilisateurs en ligne: 3
SimpleMachines-fr / Forum 23 Mai 2012 à 18:33:50 *
Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.


Connexion avec identifiant et mot de passe
Nouvelles:
Une mise à jour est disponible !
Passez à la version 1.0.18 pour la branche 1.0 et à la version 1.1.10 pour la branche 1.1!
 
 
Accueil Aide Rechercher wiki
Pages: [1]   Bas de page
Imprimer
Auteur Fil de discussion: Pas de contenu dans les e-mail (notifications, mots de passe, etc...)  (Lu 5213 fois)
0 Membres et 1 Invité sur ce fil de discussion.
btechnix
Arrivant
*
Hors ligne Hors ligne

Messages: 12


Voir le profil
« le: 28 Août 2008 à 21:41:48 »

Bonjour,

Administrateur d'un forum smf depuis 2 ans, je me trouve confronté à un problème nouveau depuis le changement de serveuir de mon hébergeur online.net courant juin 2008.

Quelques adptation mineures ont été nécessaires lors du basculement, redéfinition de la fonction mail (préalablement email comme free.fr) notamment, sur mes autres applicatifs standart ou perso sans souci, et également la redéfinition des chemins de la racine du site en / (avant c'était du style de ceux de free)
En fait des évolutions se rapprochant du standard, dans le bon sens ...

Mais les mails sont reçus vides, sans contenu, l'entête est ok, le balisage également:
Code:
From - Thu Aug 28 20:35:45 2008
X-Account-Key: account3
X-UIDL: 1219937144.14361.mrelay8-g25
X-Mozilla-Status: 0001
X-Mozilla-Status2: 00000000
X-Mozilla-Keys:                                                                                 
Return-Path: <me@localhost.com>
Delivered-To: xxxxxxxxxxx@free.fr
Received: (qmail 14302 invoked from network); 28 Aug 2008 15:25:44 -0000
Received: from 88.191.253.46 (HELO bounce-1.online.net) (88.191.253.46)
  by mrelay4-2.free.fr with SMTP; 28 Aug 2008 15:25:44 -0000
Received: from smtpout-php.online.net (unknown [88.191.253.3])
by bounce-1.online.net (Postfix) with ESMTP id 4DF642C2BD
for <xxxxxxxx@free.fr>; Thu, 28 Aug 2008 17:25:44 +0200 (CEST)
Received: from pf2-sd10.online.net (pf2-sd10.online.net [88.191.253.150])
by smtpout-php.online.net (Postfix) with ESMTP id 640A98AF5E
for <xxxxxxxx@free.fr>; Thu, 28 Aug 2008 17:25:44 +0200 (CEST)
Received: from localhost (localhost.localdomain [127.0.0.1])
by pf2-sd10.online.net (Postfix) with SMTP id 4E2782947
for <xxxxxxxxx@free.fr>; Thu, 28 Aug 2008 17:25:50 +0200 (CEST)
Subject: Nouveau message personnel: (Pas de titre)29
To: xxxxxxxx@free.fr
From: "YYYYYYYYY" <yyyyyyyy@free.fr>
Date: Thu, 28 Aug 2008 15:25:50 -0000
Message-ID: <f3f362a24673b765f9bd68e9eb3bddf7-p30@free.fr>
X-Mailer: SMF
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="SMF-b1a84e15f84b560dd1bedda40d56f768"
Content-Transfer-Encoding: 7bit
X-Server-Name: www.domaine.net
X-Script-Name: /fortest/index.php
X-Remote-Addr: 217.128.187.23
X-ProXaD-SC: Score=141
X-Antivirus: avast! (VPS 080828-0, 28/08/2008), Inbound message
X-Antivirus-Status: Clean


--SMF-b1a84e15f84b560dd1bedda40d56f768
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit


--SMF-b1a84e15f84b560dd1bedda40d56f768--

Après maintes recherches sur le sujet, sans succès, j'ai installé un forum 1.1.5 de test sans mods, et sur d'autre tables de la BDD
--> même constat aux 1ers essais
J'ai beaucoup lu ici, sur simplemachine également, beaucoup testé anciennes modifs ayant un semblant de rapport, que ce soit le coup des codes d'encodages, les line break, les entete de mail, etc... sans succès

Une discussion m'a interloqué, et apres essais, je constate ceci: si le forum est pramètré en options serveur avec english, les mails sont parfaits (mais en anglais bien sur), si je remet french = rebug, mails de nouveau vides.
Donc rechargement des fichier de langage French, pour etre sur = toujours pareil

Que faut-il donc ajusté ou modifier pour réglé ça ??
Merci d'avance de votre aide,car là,  depuis 3 mois, sutout 8 jour dans le cambouis de subppost et autres sans succès.

Une autre piste identifiée à l'instant:
avec le language French utf8 et les fichiers correspondant uploadés, celà fonctionne également, mais tous les anciens symboles ou accents des messages se retrouvent remplacés à l'affichage dans le forum par le fameux <?>
Journalisée
btechnix
Arrivant
*
Hors ligne Hors ligne

Messages: 12


Voir le profil
« Répondre #1 le: 28 Août 2008 à 22:57:50 »

Quelques éléments supplémentaires:

En fait on perd le contenu du message dans Subs_Post.php sur ces 2 lignes vers L650:
 $orig_message est bon, mais $plain_message et $encoded_message sont vides!

Code:
list(, $plain_message) = mimespecialchars($orig_message, false, true, $line_break);
et
list ($charset, $encoded_message, $encoding) = mimespecialchars($orig_message, false, false, $line_break);

donc soit pb avec mimespecialchars

Journalisée
btechnix
Arrivant
*
Hors ligne Hors ligne

Messages: 12


Voir le profil
« Répondre #2 le: 28 Août 2008 à 23:24:46 »

J'ajoute:
dans la fonction mimespecialchars vers la ligne 900
Code:
if ($simple)
{ $string = preg_replace('~&#(\d{3,8});~e', 'chr(\'$1\')', $string);
else
{
// Try to convert the string to UTF-8.
if (!$context['utf8'] && function_exists('iconv'))
$string = @iconv($context['character_set'], 'UTF-8', $string);
Et c'est avec la dernière ligne  qui ne restitue rien!
Journalisée
btechnix
Arrivant
*
Hors ligne Hors ligne

Messages: 12


Voir le profil
« Répondre #3 le: 29 Août 2008 à 00:05:49 »

de plus dans php-info il y a:

Citation
iconv
iconv support    enabled
iconv implementation    glibc
iconv library version    2.6.1

Directive                           Local Value   Master Value
iconv.input_encoding           ISO-8859-1   ISO-8859-1
iconv.internal_encoding      ISO-8859-1       ISO-8859-1
iconv.output_encoding        ISO-8859-1         ISO-8859-1
Donc ça va jamais sortir du UTF8

Merci si vous avez des proposition pour contourner cette situation ....
Journalisée
btechnix
Arrivant
*
Hors ligne Hors ligne

Messages: 12


Voir le profil
« Répondre #4 le: 29 Août 2008 à 07:40:12 »

Très provisoirement j'ai remplacé aux lignes 905, 907 et 884
l'appel à function_exists('iconv')
par (function_exists('iconv') && iconv_get_encoding('output_encoding')==='UTF-8'))

Ca permet de recevoir les mails, mais les accents du contenu ne passent pas, j'obtiens le fameux symbole <?>

Je n'ai pas plus creuser mais les accents du titre et de l'entête du mail passent correctement eux!
Journalisée
btechnix
Arrivant
*
Hors ligne Hors ligne

Messages: 12


Voir le profil
« Répondre #5 le: 30 Août 2008 à 10:55:46 »

Vu que personne, n'interviens ici, et à force d'acharnement, voilà où j'en suis  Afro

J'ai appliqué les modifs suivantes dans Subs_Post.php:

L879
Code:
if ($simple)
remplacé par
Code:
if (($simple) || (!$context['utf8'] && (function_exists('iconv') && iconv_get_encoding('output_encoding')!='UTF-8')))
L884
Code:
if (!$context['utf8'] && function_exists('iconv'))
remplacé par
Code:
if (!$context['utf8'] && (function_exists('iconv') && iconv_get_encoding('output_encoding')=='UTF-8'))
L907
Code:
if (!$context['utf8'] && function_exists('iconv'))
remplacé par
Code:
if (!$context['utf8'] && (function_exists('iconv') && iconv_get_encoding('output_encoding')==='UTF-8'))

Ce qui pour l'instant me donne un résultat correct avec l'hébergeur du site online.fr et mon un destinataire des mail sur free.fr (vérifié pour l'instant avec webmail free et Thunderbird)

Je ne sais pas si mes modifs sont les plus adéquates, j'attends vos remarques, de plus si certains peuvent tester sur d'autres hébergement ne présentant pas ce défaut, ça serait interressant.

Pour mémoire, le problème avec online, c'est que iconv existe, mais uniquement avec le charset ISO-8859-1 et pas le UTF-8 (pour l'instant....)

Merci de vos retours  Roll Eyes
Journalisée
btechnix
Arrivant
*
Hors ligne Hors ligne

Messages: 12


Voir le profil
« Répondre #6 le: 01 Septembre 2008 à 21:29:19 »

Bonsoir,

Tout d'abord merci de ton intervention MkC, je me sens moins seul, pourtant ce problème me semblait pertinent, car plusieurs l'ont rencontré comme j'ai pu le lire sur plusieurs sites SMF.

Ben je ne pense pas que ce soit une situation du type UTF / ISO erronnée, comme je le dit dans les posts précédants:
Tout fonctionnait à merveille jusqu'à la migration sur de nouveaux serveurs d'online. Le forum est en langage French ($language = 'french'; dans settings) et la base en ISO depuis le début, je n'ai jamais lancé la conversion depuis l'instal.
Autre chose, si je met le langage french-utf8 ou english, les mails sont ok, mais en french-utf, tous les anciens posts se retrouve avec le <?> à la place des car spéciaux et autres accents.

D'autre part mes tests ont été exécutés sur une fraiche install de SMF sans mods, dans un autre dossier, avec d'autres tables, donc pas de notion de migration ou quoi que ce soit du genre, et sans activer utf8.
Les tables de la base MyISAM sont en interclassement latin1_general_ci ( je ne pense pas qu'il y ait de rapport)

Lors de mes essais, le contenu du message est intact avant l'appel à iconv, mais vide en sortie car le serveur ne gère pas utf8 pour cette fonction.
J'ai également testé iconv_set_encoding('output_encoding')=='UTF-8'), qui ne provoque pas d'erreur à l'exécution, le get retourne bien utf-8, mais iconv ne retourne rien, (il mes semble que si je fais un iconv en 8859-1 cela fonctionne)
Je pensait donc bien qu'il y avait un bug, tout du moins lorsque le serveur ne gère pas iconv avec le format utf8.
Maintenant je n'ai pas vraiment compris pourquoi SMF s'évertue à faire iconv pour passer en utf8, alors qu'on est en french (non utf)  Roll Eyes

EDIT:
Comme tu as semé le doute, je suis allé voir les caractéristique serveur de la base sur online et j'ai ça:
Citation
Online
    * Version du serveur: 5.0.45-Debian_1ubuntu3.3-log
    * Version du protocole: 10
    * Serveur: ancestrologienet.sql-pro.online.net via TCP/IP
    * Jeu de caractères pour MySQL: UTF-8 Unicode (utf8)
    *Interclassement pour la connexion MySQL: utf8_general_ci
Variables et réglages du serveur  (extrait)
character set client     utf8
(Valeur globale)    latin1
character set connection    utf8
(Valeur globale)    latin1
character set database    latin1
character set filesystem    binary
character set results    utf8
(Valeur globale)    latin1
character set server    latin1
character set system    utf8
character sets dir    /usr/share/mysql/charsets/
collation connection    utf8_general_ci
(Valeur globale)    latin1_general_ci
collation database    latin1_general_ci
collation server    latin1_general_ci

Pour le forum:
Citation
Infos sur la version:
Votre version du forum: SMF 1.1.5 (plus de détails)
Version courante de SMF: SMF 1.1.5
Version de PHP: 4.4.8-1
Version de MySQL: 5.0.45-Debian_1ubuntu3.3-log
Version du serveur: Apache/1.3.34 (Ubuntu) mod_vhost_online/1.2 mod_fastcgi/2.4.2 mod_log_online/0.1
Version de GD: 2.0 or higher

et le php info est visible ici http://demo.online.net/ (lien récupéré sur http://faq.online.net/hebergement-web/php#configuration_du_php_d_online )
« Dernière édition: 01 Septembre 2008 à 23:00:37 par btechnix » Journalisée
btechnix
Arrivant
*
Hors ligne Hors ligne

Messages: 12


Voir le profil
« Répondre #7 le: 01 Septembre 2008 à 22:53:54 »

...C'est pourquoi dans l'installation à la base (en suivant ce tuto : Installation smf) il ne faut pas en aucun cas sélectionner UTF-8  Wink...
Mon conseil serait de faire une installation full ISO selon le tuto pour voir si tu as le soucis avec les posts  Wink
C'est ce que je te dis dans le post précédent, j'ai installé suivant ce tuto une version d'essai avec seulement SMF et le pack french, car je pensais avoir verollé la précédente, jamais utf8 n'a été séléctionné, et dés le 1er message envoyé je me trouve confronté au problème de contenu vide.
Je remarque sur les mails reçus de simplemachines-fr.org que les caractères accentué sont, sur mon client thunderbird, remplacés par le code numérique dans les titres comme ça l'était avant la migration de online pour mon forum.
Citation
R&#233;ponse au fil de discussion&#160;: Pas de contenu dans les e-mail (notifications, mots de passe, etc...)
Depuis leur changement de serveur, je n'avais plus ce défaut, mais le contenu avait disparu (sauf en english) Tu peux lire les modifications lors de leur changement de serveur ici : http://faq.online.net/hebergement-web/nouvelle-plateforme
 Avec mes modif, pas de caratères numériques dans le texte, et le contenu est parfaitement lisible et avec les accents.

Si tu veux testé le forum, il est à www.ancestrologie.net/fortest/index.php
« Dernière édition: 11 Septembre 2008 à 22:55:45 par btechnix » Journalisée
btechnix
Arrivant
*
Hors ligne Hors ligne

Messages: 12


Voir le profil
« Répondre #8 le: 11 Septembre 2008 à 23:00:18 »

Pour info:
Le comportement avec mes modif à l'air satisfaisant, l'ensemble des habitués m'a confirmé une réception des messages correcte quelque soit le fournisseur.

[En apparté, j'ai aussi à priori réglé un autre souci, le refus des message de online (réseau free) vers hotmail mais c'est une toute autre histoire sans rapport avec celle-ci, et pas spécifique à SMF), si ça interresse je créerai un sujet.]
Journalisée
chadon
Modérateur
*
Hors ligne Hors ligne

Sexe: Homme
Messages: 293



Voir le profil WWW
« Répondre #9 le: 12 Septembre 2008 à 03:23:44 »

J'y connais pas grand chose niveau serveur et c'est un peu trop technique pour moi mais d'apres ce que je comprends, Online n'offre sa base de donnée qu'en UTF-8 :
Citation
    * Jeu de caractères pour MySQL: UTF-8 Unicode (utf8)
Si la base de donnée est sauvegardée en ISO par SMF et que la base ne fait pas de conversion, ca me parait normal qu'il y ait un probleme d'affichage. Pourquoi ne pas convertir le forum en UTF-8 depuis l'admin de SMF et utiliser les fichiers langue en UTF-8?
Une chose est sure, c'est qu'aprés avoir testé Online.net il y a quelques années, je te conseille d'aller voir ailleurs. C'est pas cher mais c'est la vraie misere leur serveur.
« Dernière édition: 12 Septembre 2008 à 17:43:59 par chadon » Journalisée

Nao
Equipe Support
*
Hors ligne Hors ligne

Sexe: Homme
Messages: 224



Voir le profil WWW
« Répondre #10 le: 12 Septembre 2008 à 10:40:00 »

Le fait que la base soit en UTF8 n'a pas d'influence sur l'utilisation de l'ISO dans SMF il me semble... Simplement, MySQL va convertir à la volée les données vers ISO quand on lui en demandera.
En tout cas, je peux vous assurer que je mets indépendamment mes SMF sur des bases en ISO ou en UTF, et dans tous les cas j'utilise ISO-8859-15 pour mes sites... Bref, jamais eu de souci. (Je suis chez OVH, pour info.)

PS : je ne lis pas ce topic, si vous voulez me poser une question -> PM.
Journalisée

Nao - beta-testeur sur SMF, co-traducteur de la VF, développeur sur SMF Media Gallery et Aeva.

Je ne fais pas de support technique (que ce soit via forum ou PM) pour SMG ici... Merci de poster (en anglais de préférence) sur smf-media.com pour ça. Idem pour Aeva, pas de support technique, poster sur http://aeva.noisen.com, merci.
chadon
Modérateur
*
Hors ligne Hors ligne

Sexe: Homme
Messages: 293



Voir le profil WWW
« Répondre #11 le: 12 Septembre 2008 à 17:49:09 »

Sur un hébergeur normal oui MySQL va convertir en ISO mais chez Online on dirait que la base de donnée n'est qu'en UTF8. Ca expliquerait pourquoi il n'y a ce probleme que depuis la migration chez eux.
Journalisée

Pages: [1]   Haut de page
Imprimer
SimpleMachines-fr / Forum  |  Support SMF  |  SMF 1.1  |  Installations/Mises à jour/Migrations  |  Fil de discussion: Pas de contenu dans les e-mail (notifications, mots de passe, etc...)
 
Aller à:  

Powered by SMF 1.1.16 | SMF © 2011, Simple Machines

Tous les logos et les marques présentes sur ce site appartiennent à leurs propriétaires respectifs.
Des détails sur les copyrights et les modules installés peuvent être trouvés Ici.

Vous pouvez syndiquer le contenu de ce site : Flux-RSS/RDF.

Site propulsé par pragmaMx 0.1.11.3.

Valid HTML 4.01 Transitional CSS ist valide!
Design by © www.ndeezign.com