Hallo Kerstin,
deine Anmerkung zum Thema Umlaute kann ich nur zum Teil folgen.
Wenn eine Internetseite im Header auf UTF-8 eingestellt ist, stellt der Browser sich automatisch auf den vorgegebenen Codierung ein.
Deklarieren tust du das im Headerbereich mit folgenden Eintrag:
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
Ich kann nicht von meinen Kunden erwarten, dass Sie über solche Kentnisse verfügen und erst Ihren Browser umstellen müssen damit Sie im Shop den richtigen Zeichensatz haben.
Das Problem in unserem Fall , liegt daran das Randshop nicht genügend Ihre Scripts getestet haben.
Wäre alles richtig deklariert so würden sich die Probleme erst garnicht auftreten.
Da bei Randshop alle Texte in einer Datenbank mit dem uft8_general_ci hinterlegt werden, müssen diese erst entschlüsselt werden.
Beispiele:
Der FPDF Katalog wird in westeuropäisch (ISO) dargestellt. Inhalte der Datensätze werden falsch widergegeben da im Script der utf8_decode an verschiedenen stellen schlichtweg vergessen wurde. Darüber habe ich bereits ausführlich berichtet.
Der Mailinhalt für HTML und/oder Text wird ebenfalls über die Datenbank abgerufen. Auch hier sind Fehler in der Darstellung der Umlaute.
Beim Aufrufen der empfangenen Mail kannst du sehr schnell feststellen wie diese versendet wurde -
in ISO-8859-1, was natürlich falsch ist.
In Includes/mail/htmlMimeMail/ liegt das Problem. Das Mailprogramm ist nicht von Randshop sondern von Richard Heyes und hat zum Script eine API.text als Hilfsdatei beigefügt worin du nachlesen kannst wie man das Script konfigurieren kannst. Überhaupt ist dieses Mail-Teil der Hammer weil man damit alles wie gewünscht einstellen kann.
Ruf mal die Datei htmlMimeMail.php auf und gehe zu Zeile 121
dort steht folgendes:
$this->build_params['html_encoding'] = 'quoted-printable';
$this->build_params['text_encoding'] = '7bit';
$this->build_params['html_charset'] = 'ISO-8859-1';
$this->build_params['text_charset'] = 'ISO-8859-1';
$this->build_params['head_charset'] = 'ISO-8859-1';
$this->build_params['text_wrap'] = 998;
Ändere mal alle ISO-8859-1 auf utf-8 um und du wirst sehen, wie von Geisterhand sind jetzt alle Umlaute richtig dargestellt, sowohl im Text- als auch in der HTML-Mail.
Es dürfte klar sein wenn in der Datenbank Steuerzeichen für UTF-8 hinterlegt werden und Mails als ISO-8859-1 versendet werden, falsche Steuerzeichen mir dargestellt werden.
Teste doch mal folgendes ->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>UTF</title>
</head>
<body>
Kölnerstr. = mit UTF Zeichensatz<br />
Kölnerstr. = ö dargestellt<br />
Kölnerstr. = unsere Schriftzeichen<br />
</body>
</html><- und stell den Browser mal auf ISO um dann wirst schon sehen was passiert
Also bitte nicht den Browser umstellen das Script sollte einwandfrei arbeiten, besonders für unsere User die im Shop kaufen sollen und nicht irgendwelche Einstellungen am Browser vornehmen damit Sie die Zeichen lesen können.
Es liegt also nur an dem Entwickler ob Seiten richtig dargestellt werden. Hier hat Randshop die 1.3 Version nicht genügend getestet obwohl die Fehler mit ein paar Mausklicks sich schnell zeigten( Bugs mal ausgenommen). Siehe dazu auch mal den Demoshop dort herrschen die selben Probleme die Randshop hätte schnell ausmerzen können, wenn die Jungs nur mal etwas genauer geschaut hätten.
Aber wozu gibt es uns hier im Forum.....
Selbst von uns kann Randshop noch was lernen.....
Euer Heini
PS: 4. in der config.inc.php muss define("CHARSET", "uft8");, bloss nicht schreib lieber utf-8, dass kommt besser an...