[gelöst] Falsche Zeichenkodierung in den Aktivierungsmails

Started by dtdesign, September 09, 2006, 08:51:33 AM

Previous topic - Next topic

dtdesign

Hallo,

ich habe gestern das SMF 1.1 RC3 installiert, da ich bis jetzt mit den RC keine schlechten Erfahrungen gemacht habe. Allerdings ist mir beim testen der Registrierung etwas merkwürdiges aufgefallen.

Ich denke, die E-Mail spricht für sich ;)

Date: Sat, 09 Sep 2006 12:40:41 +0000

X-Mailer: SMF

Content-Type: text/plain; charset=UTF-8

Content-Transfer-Encoding: quoted-printable
Message-Id: <E1GM28X-00033r-00@*******.pureserver.info>
Sender:  <********@*******.de>

Sie sind jetzt mit einem Benutzerkonto im Forumname registriert, ****=21



Ihr Benutzername ist **** und das Passwort lautet **** (es kann sp=C3=A4ter ge=C3=A4ndert werden).



Bevor Sie sich einloggen k=C3=B6nnen, m=C3=BCssen Sie auf folgender Seite Ihr Benutzerkonto aktivieren:



http://**********.de/index.php=3Faction=3Dactivate;u=3D4;code=3Dc99f7d1d74



Sollten Sie Probleme mit der Aktivierung haben, benutzen Sie bitte diesen Code =22c99f7d1d74=22.



Lieben Gru=C3=9F,

das Forumname Team.


Liegt dies am E-Mail Client oder gibt es Probleme mit der Zeichenkodierung?

PS: Habe bereits einiges von Hand ausprobiert, ich würde mich als PHP-Entwickler schimpfen und bin inzwischen ratslos. Und phpBB 3 will ich nicht ;)

Gruß
dtdesign

xduugu

Was heißt falsche Zeichenkodierung?

Wurde das Board zu UTF-8 konvertiert? Kann der Email-Client mit UTF-8 umgehen (eigentlich sollte das jeder aktuelle können...)

Werden die Mails per SMTP oder per mail() verschickt?

dtdesign

Das Board wurde nicht auf UTF-8 konvertiert und der E-Mailclient kann definitiv mit UTF-8 umgehen ;)

Die Mails werden via mail() verschickt, jedoch funktionieren Mails die von meinem CMS versendet werden (im Hinblick auf die Zeichenkodierung). Daher gehe ich auch von einer falschen Zeichenkodierung aus. Würde es helfen, das Forum in UTF-8 zu konvertieren?

Gruß
dtdesign

moppedhausi

Quote from: dtdesign on September 09, 2006, 10:26:56 AM
Das Board wurde nicht auf UTF-8 konvertiert und der E-Mailclient kann definitiv mit UTF-8 umgehen ;)

Die Mails werden via mail() verschickt, jedoch funktionieren Mails die von meinem CMS versendet werden (im Hinblick auf die Zeichenkodierung). Daher gehe ich auch von einer falschen Zeichenkodierung aus. Würde es helfen, das Forum in UTF-8 zu konvertieren?

Gruß
dtdesign

So sah die Mail bei mir auch aus Dann habe ich auf SMTP umgestellt, jetzt klappt es.
Gruß Wilfried
--------------------------------------
Version: SMF 1.1 RC3
Mods: Users Online Today Mod 1.4.0 Beta 2, SMF Shoutbox 1.14

dtdesign

Ok, danke. Ich habe das Forum auf SMTP umgestellt und alles funktioniert tadellos. Danke nochmal ;)

Gruß
dtdesign

fun4us

SMTP ist aber keine Lösung, was ist wenn Du ein großes Forum hast und eine Rundmail schreiben möchtest. Der Mail Provider wird das kaum zulassen ...

Wäre schön wenn das wieder gelöst würde. Irgendwie scheint SMF da ein Probelm zu haben was immer wieder eingebaut wird und für Ärger sorgt. Manche Clients mögen das zwar richtig umsetzen, aber sehr viele können/machen das nicht.

Seit RC3 ist das Probelm wieder da  >:(

fun4us

So ich habe einen Workaround für das Problem. Verstehe nicht das die Developper das nicht in den Griff bekommen  :-X

in der Datei Subs-Post.php

folgende Zeile auskommentieren

list ($charset, $message, $encoding) = mimespecialchars($message, false, $hotmail_fix);

und folgende Zeilen einfügen

  $encoding = '';
  $modSettings['mail_strip_carriage'] = true;
  //list ($charset, $message, $encoding) = mimespecialchars($message, false, $hotmail_fix);


Der Link funktioniert nun wieder. allerdings werden Textteile der Mail falsch dargestellt (Umlaute).
Das kann in den Transaltion Files schnell behoben werden. Verstehe eh nicht warum dort mit $hXXX; als Umlauterersatz gearbeitet wird.

folgende Änderungen sind zu machen

index.german.php

$txt[130] = "Lieben Gruß,\ndas " . $context['forum_name'] . ' Team.';

login.german.php auch hier den Kryptischen Müll durch echte Umlaute erstzen und schon stimmt die Mail wieder.


// For the below three messages, %1$s is the display name, %2$s is the username, %3$s is the password, %4$s is the activation code, and %5$s is the activation link (the last two are only for activation.)
$txt['register_immediate_message'] = 'Sie sind jetzt mit einem Benutzerkonto im ' . $context['forum_name'] . ' registriert, %1$s!' . "\n\n" . 'Ihr Benutzername ist %2$s und das Passwort lautet %3$s.' . "\n\n" . 'Sie können Ihr Passwort nach dem Einloggen ändern, indem Sie in Ihr Profil gehen oder folgende Seite besuchen:' . "\n\n" . $scripturl . '?action=profile' . "\n\n" . $txt[130];
$txt['register_activate_message'] = 'Sie sind jetzt mit einem Benutzerkonto im ' . $context['forum_name'] . ' registriert, %1$s!' . "\n\n" . 'Ihr Benutzername ist %2$s und das Passwort lautet %3$s (es kann später geändert werden).' . "\n\n" . 'Bevor Sie sich einloggen können, müssen Sie auf folgender Seite Ihr Benutzerkonto aktivieren:' . "\n\n" . '%5$s' . "\n\n" . 'Sollten Sie Probleme mit der Aktivierung haben, benutzen Sie bitte diesen Code "%4$s".' . "\n\n" . $txt[130];
$txt['register_pending_message'] = 'Ihre Registrierung im ' . $context['forum_name'] . ' haben wir erhalten, %1$s.' . "\n\n" . 'Ihr geählter Benutzername ist %2$s und das Passwort lautet %3$s.' . "\n\n" . 'Bevor Sie sich einloggen und das Forum benutzen können, muss Ihr Benutzerkonto zuerst vom Administrator genehmigt werden. Wenn das erfolgt ist, erhalten Sie eine weitere E-Mail.' . "\n\n" . $txt[130];

// For the below two messages, %1$s is the user's display name, %2$s is their username, %3$s is the activation code, and %4$s is the activation link (the last two are only for activation.)
$txt['resend_activate_message'] = 'Sie sind jetzt mit einem Benutzerkonto im ' . $context['forum_name'] . ' registriert, %1$s!' . "\n\n" . 'Ihr Benutzername ist "%2$s".' . "\n\n" . 'Bevor Sie sich einloggen können, müssen Sie auf folgender Seite Ihr Benutzerkonto aktivieren:' . "\n\n" . '%4$s' . "\n\n" . 'Sollten Sie Probleme mit der Aktivierung haben, benutzen Sie bitte diesen Code "%3$s".' . "\n\n" . $txt[130];
$txt['resend_pending_message'] = 'Ihre Registrierung im ' . $context['forum_name'] . ' haben wir erhalten, %1$s.' . "\n\n" . 'Ihr geählter Benutzername ist %2$s.' . "\n\n" . 'Bevor Sie sich einloggen und das Forum benutzen können, muss Ihr Benutzerkonto zuerst genehmigt werden. Wenn dies erfolgt ist, erhalten Sie eine weitere E-Mail.' . "\n\n" . $txt[130];



noex

Ich wollte dich nur auf einen kleinen Tippfehler aufmerksam machen:
QuoteIhr geählter Benutzername

Nur für den Fall das User das ganze mit Copy+Paste übernehmen.

lg
noex
"Jetzt, wo ich weiß wie es geht, versteh ich auch die Gebrauchsanleitung"

fun4us

Oh vielen Dank, hab ich bestimmt auch falsch drinnen stehen  :D

Gruß Stefan

Wolf18


MartinB

Vieleicht sollte man dieses Thema mal in den FAQs aufnehmen, den bisher gab es ja immer nur Temporär gelöste Varianten Sprich auf SMTP umstellen, aber es soll auch noch Anbieter geben wo eine Umstellung auf SMTP nicht möglich ist. Daher finde ich gut das jetzt auch mal die Mail schnittstelle richtig gestellt ist.

fun4us

Gelöst ist das Thema so leider noch lange nicht - nur ein Workarround the bugs.

Es dürfe evtl. wieder Probleme bei anderen Sprachen etc. geben. Keine Ahnung was die Programmierer da so alles treiben. Ich verstehe nicht, warum das so ein Drama ist, welches sich seit etlichen Versionen hinzieht. Irgendwo hatte ich mal geschrieben wann es begonnen hat ...

Und immer kommt von irgend jemandem die lächerliche Antwort auf SMTP umzustellen und das Thema siehe Betreff wird auf [gelöst] gesetzt. - Lächerlich

Dazu braucht man erst mal einen Provider der die Mails annimmt. Ich glaube die Leute die den Code geschrieben haben (incl. implementiertem Hotmail Fix - keine Ahnung was das wieder soll - ein neuer Workarround, weil Sie den Code nicht sauber bekommen) blicken den Code selber nicht mehr.

Beim nächsten RC oder der Final ist wieder alles beim Alten und man kann wieder selber Hand anlegen und rumfrickeln.

Sorry für die erbosten Worte, ich weiß die Software kostet nichts (War selber hier schon Sponsor), aber wenn täglich die Leute nerven weil Sie sich nicht registrieren können, dann ärgert und nervt das noch viel mehr. Aber im Moment scheint es dank dem Fix wieder zu gehen.

Gruß fun4us

Wolf18

na dann werde ich mich mal daran machen des per fix zu lösen....., ich denke dann weiß ich wieder ganz bestimmt warum ich von phpBB weg bin..........................

Advertisement: