Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Hier bekommst Du deutschsprachigen Support. Keine Fehlermeldungen oder Erweiterungswünsche bitte!
User avatar
kukki
Posts: 1714
Joined: Mon 7. Feb 2005, 20:02
Location: Berlin Köpenick
Contact:

Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by kukki »

Beim Import bemerke ich ein Umlaufproblem, dass mit erst heute aufgefallen ist:

Image

Woran könnte das nun liegen?
Lieber arm dran als Arm ab!

meine historische Website: Jagdgeschwader 300 1.9.42-R554
kukki's SpIeLwIeSe V.1.9.33 R553 responsive
User avatar
top
Posts: 538
Joined: Fri 11. Aug 2006, 15:03
Location: Eutin

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by top »

Ursprungsseite:

Code: Select all

  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
Deine Spielwiese:

Code: Select all

  <meta charset="utf-8" />
Die Textblöcke sind nicht betroffen, da dort (vermutlich durch den wysiwyg-Editor) statt z.B. "ü" ein "&uuml;" abgespeichert wurde.
User avatar
kukki
Posts: 1714
Joined: Mon 7. Feb 2005, 20:02
Location: Berlin Köpenick
Contact:

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by kukki »

Stimmt, der Editor wandelt selbständig diese Sonderzeichen um :|
:?: Wie kann man nun ohne gleich eine Textmanipultion per jQuery/ PHP einzusetzen, das Problem in Griff kriegen. Immerhin haben wir zu früheren Zeiten noch keine UTF-8 -Codierung benutzt, sondern halt eben ISO-8859-1. Und deswegen die Datenbank umrubel (ob das überhaupt geht) ?
Lieber arm dran als Arm ab!

meine historische Website: Jagdgeschwader 300 1.9.42-R554
kukki's SpIeLwIeSe V.1.9.33 R553 responsive
User avatar
Oliver Georgi
Site Admin
Posts: 9919
Joined: Fri 3. Oct 2003, 22:22
Contact:

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by Oliver Georgi »

Mit JavaScript ist das eh nicht möglich.

Du musst Dich halt darum kümmern und entsprechende Funktionen definieren, siehe:

Code: Select all

$phpwcms['output_function_filter'] = array('trim', 'utf8_encode');
oder über die URL

Code: Select all

Nach UTF-8 phpwcms_output_action=F-utf8_encode--S-EVENTS
Von UTF-8 phpwcms_output_action=F-utf8_decode--S-EVENTS
oder eben eine eigene Funktion schreiben, die sich speziell um alles selbst kümmert.

Mehr utf8_encode(), utf8_decode().
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
User avatar
update
Moderator
Posts: 6455
Joined: Mon 10. Jan 2005, 17:29
Location: germany / outdoor

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by update »

Dieses phpwcms_output_action scheint ja etliche weitere Möglichkeiten zu beherbergen, die so noch gar nicht klar sind, oder? Es gibt nicht zufällig eine (kleine) Liste der Möglichkeiten? ;)
It's mostly all about maintaining two or three customer's sites Still supporter for the band Mykket Morton. Visit Mykket Morton on FB. Listen Mykket Morton and live videos on youtube.
Now building a venue for young artists to get wet on stage, rehearsal rooms, a studio, a guitar shop - yes I'm going to build some guitars.
User avatar
Oliver Georgi
Site Admin
Posts: 9919
Joined: Fri 3. Oct 2003, 22:22
Contact:

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by Oliver Georgi »

Das habe ich alles schon mal beschrieben. Rest ist schlicht von Eurer Kreativität und Bedarf abhängig.
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
User avatar
Jensensen
Posts: 3000
Joined: Tue 17. Oct 2006, 21:11
Location: auf der mlauer

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by Jensensen »

claus wrote:... phpwcms_output_action ...
miracles: wunderbar geheime killerfunktionen
Oliver Georgi wrote:Das habe ich alles schon mal beschrieben. ...
das hat eine housefrau, wie ich, in 2009 schon nicht mehr begriffen und fünf jahre später leider immer noch nicht.
{so_much} | Knick-Knack. | GitHub
Umlaute im URL sind meistens immer Kacke.
User avatar
Oliver Georgi
Site Admin
Posts: 9919
Joined: Fri 3. Oct 2003, 22:22
Contact:

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by Oliver Georgi »

OK, gebe zu, komplexes Thema — richtet sich aber wirklich vor allem an Entwickler. Das Grundprinzip ist aber simpel.

Über den Parameter phpwcms_output_action werden die Anweisungen an phpwcms übermittelt.

Code: Select all

phpwcms_output_action=F-function1|function2|…--S-section1|section|…
  • F: eine oder mehrere PHP Funktionen, die einen ermittelten Contentbereich parsen
  • S: einer oder mehrere Contentbereiche <!--SECTION_NAME_START//--> <tag>Seiteninhalt</tag> <!--SECTION_NAME_END//-->
Um nicht jede beliebige Funktion benutzen zu können (Sicherheit), kann über F nur auf Funktionen zurückgegriffen werden, die in

Code: Select all

$phpwcms['output_function_filter'] = array();
definiert worden sind.

Diese werden dann beim Ausführen auf den jeweiligen ermittelten Contentbereich angewendet. Jede auf den Contentbereich auszuführende Funktion muss über phpwcms_output_action festgelegt werden. Die Definition dieser Konfigurationsparamter erfolgt am besten in frontend_init. Eine eigene Filterfunktion wäre z.B.

Code: Select all

function custom_section_filter($text='') {
    $text = str_replace('Find mich', 'Ersetz mich', $text);
    return $text;
}
Dann sähen zugrundeliegende Konfigurationswerte etwa so aus:

Code: Select all

//Zulässige Funktionen über phpwcms_output_action
$phpwcms['output_function_filter'] = array('custom_section_filter', 'trim', 'utf8_encode', 'utf8_decode');
Standardfunktionen, werden dann gemischt mit Werten aus phpwcms_output_action und in der Reihenfolge wie definiert abgearbeitet. Achtung!!! Es wird nur die Schnittmenge benutzt, siehe.

So könnte dann ein Aufruf aussehen:

Code: Select all

phpwcms_output_action=F-trim|utf8_encode|custom_section_filter--S-BEREICH1
Mehrere abgefragte Contentbereiche werden getrennt geparst und am Ende zu einem zusammengezogen und zurückgegeben.
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
RalfB
Posts: 192
Joined: Mon 9. Jan 2012, 13:05

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by RalfB »

Müssen alle 47 Tabellen in der Datenbank von latin1_general_ci auf utf8_general_ci in der Kollation umgestellt werden?
Ich habe das vorhin mal zu Probe mit Allen gemacht.
Habe aber Panik bekommen und alles zurückgestellt, weil plötzlich in den Vorlagen alle Eintragungen in HTML Kopf, Kopfzeile Haupt.... weg waren. Alles Leer. Sah zumindest so aus.
Auch die Angaben in im css . Sah aus als ob alles weg war.
User avatar
Oliver Georgi
Site Admin
Posts: 9919
Joined: Fri 3. Oct 2003, 22:22
Contact:

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by Oliver Georgi »

NIEMALS nachträglich die Collation der Datenbanktabellen umstellen! Serialisierte Arrays, die Non-Ascii-Zeichen enthalten, gehen flöten.
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
RalfB
Posts: 192
Joined: Mon 9. Jan 2012, 13:05

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by RalfB »

Oliver Georgi wrote:NIEMALS nachträglich die Collation der Datenbanktabellen umstellen! Serialisierte Arrays, die Non-Ascii-Zeichen enthalten gehen flöten.
Also ich habe es noch einmal geprüft.
Den Effekt: "plötzlich in den Vorlagen alle Eintragungen in HTML Kopf, Kopfzeile Haupt.... weg waren. Alles Leer. Sah zumindest so aus."
habe ich schon, wenn ich die Umstellung von "$phpwcms['charset'] = 'iso-8859-1';" auf "$phpwcms['charset'] = 'utf-8';" in der conf.inc.php mache.
(und im Hinweistext schreibst du ja man solle keine Andere Einstellung wählen. // default charset 'utf-8' do not use soemthing different any longer)
User avatar
Oliver Georgi
Site Admin
Posts: 9919
Joined: Fri 3. Oct 2003, 22:22
Contact:

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by Oliver Georgi »

Aber NICHT hinterher!!! Einmal festgelegt, ist es nur sehr schwer, dass wieder zu ändern oder man weiß genau, was man dort macht.

$phpwcms['charset'] und $phpwcms['db_charset']/$phpwcms['db_collation'] hängen unmittelbar zusammen und voneinander ab.

Das hat, wie gesagt, vor allem mit serialisierten Arrays zu tun, die an vielen Stellen im System benutzt werden. Würde ich heute so nicht mehr machen.
http://stackoverflow.com/questions/2853 ... er-2853670
Oliver Georgi | phpwcms Developer | GitHub | LinkedIn | Систрон
nameless1
Posts: 882
Joined: Sun 27. Apr 2008, 23:22

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by nameless1 »

Oliver Georgi wrote: Das hat, wie gesagt, vor allem mit serialisierten Arrays zu tun, die an vielen Stellen im System benutzt werden. Würde ich heute so nicht mehr machen.
tritt nach meiner erfahrung vor allem bei image_special, formular und shop auf. in der theorie ist es möglich jede spalte mit einer routine abzufragen und mit neuer charset zu speichern. war uns aber jedes mal viel zu aufwendig. schneller und sauberer ging manuell neuanlage.
User avatar
juergen
Moderator
Posts: 4556
Joined: Mon 10. Jan 2005, 18:10
Location: Weinheim
Contact:

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by juergen »

naja, wenn, wie in dem Beispiel die richtige Länge des Strings als falsch deklariert wird, gibts ja wirklich keine verlässliche Methode das zu ändern. Bevor ich das gelesen habe hätte ich behauptet, dass ein CSV Export das repariert. Aber wenn die Kollation wechselt ist das dann selbst da im Eimer.

Erinnert mich an base64 Kodierte EMail Parts, genauso ein Wischi Waschi ....
nameless1
Posts: 882
Joined: Sun 27. Apr 2008, 23:22

Re: Import-Umlautproblem bei <h1/2/3> u. Bildbezeichner

Post by nameless1 »

juergen wrote:naja, wenn, wie in dem Beispiel die richtige Länge des Strings als falsch deklariert wird, gibts ja wirklich keine verlässliche Methode das zu ändern.
türlich gibt es den - in der theorie. holst es in der richtigen Kollation ab, wandelst es in die neue um und speicherst es zurück.
Post Reply