Vanilla 1.1.2 Forum von Lussumo. Weitere Informationen: Dokumentation, Community.

    • CommentAuthorlinus
    • CommentTime22.09.2008 bearbeitet
     permalink
    Hallo zusammen,

    ich habe gerade mit schrecken festgesellt das webloginpe im username keine umlaute akzeptiert. Dies hat fatale Folgen. Sprich, meldet sich jemand entsprechend an, zerreist es in meinem Fall meine schöne Startseite und eine weblogin fehler ab zeile 1205 wird ausgeben.

    Schreib ich die Umlaute direkt in die db. Gibt es zwar erstmal keine Fehler dafür werden Einträge in andern Felder falsch ausgeben. meine db ist verumutlich utf8. Kann ich leider nachträglich leider nicht auslesen. Im Backend in der Konfiguration ist ebenfalls utf8. Im Header des Tempalte iso8859. Egal wie ich das drehe. das ergebniss bleibt immer das selbe. Jetzt habe ich in eine mysql forum was über doppelt codierung gelesen.

    Die Krux ist jetzt halt das ich die nicht nachträglich auf iso umstellen kann. Ich vermute das würde mein Problem lösen. Habe allerings keinen plan wie ich das hingbekommen?
    •  
      CommentAuthorJako
    • CommentTime22.09.2008
     permalink
    Das einfachste wäre es, das Template auf UTF-8 zu stellen. Warum brauchst Du dort iso8859?
    • CommentAuthorlinus
    • CommentTime22.09.2008
     permalink
    Hallo Jako, das hat ich schon mal. Leider wirkt sich ds in keinster weisse auf den WebloginPE aus. Ich vermute das es am Post des Forular liegt? Ich suche
    •  
      CommentAuthorJako
    • CommentTime23.09.2008
     permalink
    Vielleicht liest du den Thread mal. Dort müsste alles abgehandelt sein.

    Wo wird denn bei Dir Unsinn ausgegeben, wenn Du das Template auf UTF-8 stellst?
    •  
      CommentAuthorstefan
    • CommentTime23.09.2008
     permalink
    Hallo Leute,

    accept-charset funktioniert nicht mit dem IE. Es gibt also keine Möglichkeit von utf-8 nach iso zu senden. Ansonsten glaube ich das Du Linus ein grundsätzliches Problem mit den Zeichensatz hast. Wenn Du die aktuelle 962 verwendest, überrascht mich das nicht, denn das stimmt vieles wieder nicht was den Zeichensatz betrifft.

    Übrigens ist es auch egal, was im HTML-Header steht, wenn der Server per default einen Zeichensatz liefert, ist es dem Browser recht schnuppe was Du im HTML Header angegeben hast.

    ciao, Stefan

    PS: Ich kann mich mit webloginpe auch mit Umlauten anmelden.
    • CommentAuthorlinus
    • CommentTime23.09.2008
     permalink
    Gibts eigentlich mal ein modx'ler treffen ich geb dann einen aus :-)

    Also ich habe jetzt eine Standart installation 9.6.1 und nur den WebLoginPE ohen irgendwelche modifizierungen installiert. Auf der Startseite gebe ich den sitemamin per type=`users` aus. Wenn ich nun den siteadmin im backend in siteädmin ändere macht er mir den selben Fehler und ich habnoch nicht mal dran rumgefummelt??? Um das ganze mal zu sehen: kunden.opilion.de/modx benutzer admin paß 123456. in die db schreibt das Teil siteädmin im Backend wird es richtig ausgegeben und auf der Startseite kommt folgender Fehler: Error: Invalid argument supplied for foreach()
    Error type/ Nr.: Warning - 2
    File: /homepages/37/d225476427/htdocs/kunden/modx/assets/snippets/webloginpe/webloginpe.class.php
    Line: 1154
    Line 1154 source: foreach ($theUser as $attribute => $value)


    Ich weiss wirklich nich mehr weiter :-(

    Vielen Dank
    •  
      CommentAuthorstefan
    • CommentTime23.09.2008
     permalink
    Servus linus,

    auch bei der 961er gibt es einen ganz wichtigen Punkt zu beachten. Also wenn Deine Datenbank auf utf8 läuft, modx an alles Stellen auf utf8 eingestellt ist und trotzdem ädmin als ädmin rauskommt, liegt es daran, das vermutlich schon gar nicht richtig in die DB geschrieben wurde. Wie sieht der Eintrag denn in der DB aus?

    Schau mal in der config.php ob es bei Dir diese Zeile gibt.
    $database_connection_charset = 'utf8';


    sollte ziemlich oben zu finden sein. Wenn es diese Zeile gibt, nur ohne das utf8, ändere die Zeile so, daß als Wert eben das "utf8" drinsteht den bereits vorhanden Eintrag in der DB muß Du dann dort über phpmyadmin ändern oder löschen und neu anlegen. Dann nochmal versuchen.

    ciao, Stefan
    • CommentAuthorlinus
    • CommentTime23.09.2008 bearbeitet
     permalink
    Ich habe jetzt alles durch was man so testen kann. Ich habe jetzt mal bei 1und1 nachgehackt. Die sagen das die db mit was auch immer (konnten Sie mir nicht sagen) voreingesellt sind. Diese kann nicht geändert werden. Ichabe das mal per phpmyadmin getested. Ich kann das teil temopärer auf utf8 auf umstellen. Beim nächsten login ist die einstellung wieder draußen. Und die vorenstellung drin? Aber, das muss ja irgenwas sein das umlaute etc verseht. es gibt ja zig db bei denen. Also doch der webloginpe der die Daten falsch sendet?

    Ich hatte mal in der newUser funktion folgendes geändert utf8_decode(username). Dann schreibt das teil wenigsten richtig in die Datnbank und der Fehler ist weg. Aber dies ist sicher der Falsche Weg. Da ich so die daten wiederum nicht auslesen kann und der Login trotzem nich funktioniert. Da müsste ich die ganze Klasse umbauen und ständig zwisvhen encode und decode switchen :cry: die fragenzeichen werden immer mehr.

    Spannend wäre Deine Konfiguration Stefan, sprich welcher Provider php mysql version
    •  
      CommentAuthorstefan
    • CommentTime23.09.2008
     permalink
    Servus Linus,

    na ja, was spannendes kann ich daran nicht erkennen. Eher ein Leiden das man immer noch selbst lindern muß. Wenn Du die Voreinstellungen der Datenbank nicht ändern kannst, dann benutzt Du einfach durchgängig die Einstellungen der Datenbank. Wenn die Datenbank mit ISO läuft stellst Du einfach alles in modx auf iso-8859-1 um, das dürfte es dann wirklich gewesen sein.

    Versuch es einfach mal.
    tschüß, Stefan
    • CommentAuthorlinus
    • CommentTime23.09.2008
     permalink
    Stefan das war merci vielmals,

    also tipp an alle die ein älteres Paket bei 1und1 haben bei dem man keine mysql5 einrichten kann (keine Ahnung ob sich da die Zeichencodierung einstellen pder wechseln lässt). Alles auf iso8859. D.h. im Template ISO-8859-1, in der config.inc im manager/includes auf latin1 und im Backenend auf western-8859-1
    • CommentAuthorSpackko
    • CommentTime23.09.2008
     permalink
    Darf ich mich anhängen?

    ich habe eine 961 auf 962 geupdated, danach eine neue Tabelle mit utf8 angelegt und Umlaute eingepflegt.
    1 config steht auf utf8
    2 template auch
    3 tablespace, tabelle und felder auch.

    Raus kommt Bruch.

    Stell ich im Manager die Codierung auf ISO, habe ich aus der DB wunderbar ausgelesene Umlaute, nur der Rest der Site, des Managers etc geht dann baden.
    Ausgelesen wird aus der DB mittels modx->db->sql...

    Aus diversen Gründen würde ich gern iso vermeiden.
    •  
      CommentAuthorstefan
    • CommentTime23.09.2008 bearbeitet
     permalink
    Servus Spackko

    Die Verbindung zur Datenbank läuft nicht nicht mit der richigen Kollation, deshalb kommen die Daten mistig raus und genauso mistig rein wenn Du über modx was reinschreiben willst. Die Amis haben halt keine "Ü"s auf der Tastatur, die können das schlecht testen :-)

    Hab natürlich auch schon eine 962er installiert und bekam ebenso nur schrott raus. Es sind die bekannten Problem Zeichensatz/Verbindung zur DB, Alias/Umlaute... Versuch mal von der russischen Wikipedia Seite Text in ein chunk zu schreiben und schau mal was dabei rauskommt... es ist zum heulen, denn genau diese Punkte hätte ich als erledigt erwartet.. einige Diskussionen gab es ja genau deswegen. Auch die Auswahl ob ich NAMES SET oder CHARACTER SET an die DB absetzen will hat irgendwie keine Auswirkung. ... Naja, was ich sagen will ist das Du wohl wie in der 961er erstmal für den richtigen Umgang mit den Zeichen selbst sorgen mußt. Es gibt da zwei, drei Stellen an denen man anpacken kann. Dann dürfte alles wie gewünscht laufen. Erwarte jetzt aber nicht sofort eine Antwort, ich muß selbst erst schauen wie die hacks der 961er auf die aktuelle version passen. Sicher weiß irgendwer schon wie es läuft.

    ciao, Stefan
    •  
      CommentAuthorJako
    • CommentTime23.09.2008
     permalink
    es ist zum heulen, denn genau diese Punkte hätte ich als erledigt erwartet


    Was meinst Du was ich gedacht habe, als ich eine Installation auf die 0.9.6.2 upgedatet habe (ich wollte sowieso auf Ditto 2.1 updaten). Der gleiche Mist, der zwischenzeitlich auch bei Ajax-Search passiert ist. Und das bei einer Version ohne RC – wie bei AjaxSearch auch.

    Die mit nicht bugfreien Sonderzeichen gesegnete Version ist nach 7 Tagen immer noch online, im Forum wird fleißig über Fixes geredet - diese lassen sich ohne Account bei Jira aber nicht downloaden. Wenn in dieser Zeit jemand über diese Version (hatte ich schon gesagt ohne RC) stolpert, dann wird er sich eher gegen das System entscheiden.

    Grummel :sad:!
    • CommentAuthorBruno
    • CommentTime23.09.2008
     permalink
    da hatte ich wohl Glück gehabt mit meiner 0.9.6.2 rc2, da ging alles völlig problemlos. Lief alles gleich auf utf8, auch in verbindung mit webloginpe 1.3.1. keine Probleme. Oder ich habs noch nicht gemerkt???
    •  
      CommentAuthorJako
    • CommentTime23.09.2008 bearbeitet
     permalink
    Die RC2 hatte ich nicht installiert. Es war die 'finale' Version der 0.9.6.2.
    • CommentAuthorBruno
    • CommentTime23.09.2008
     permalink
    sag ich doch, scheinbar Glück gehabt, daß ich die rc2 installiert habe und nicht die 'finale'
    • CommentAuthorriechsalz
    • CommentTime24.09.2008 bearbeitet
     permalink
    Ich habe vor einigen Tagen von 0.9.6.1p2 auf 0.9.6.2 aktualisiert. Die Sonderzeichen wurden, obwohl in der Datenbank (UTF-8, Kollation: utf8_general_ci) korrekt, falsch dargestellt.
    Anschließend habe ich den Tipp aus dem Thread http://modxcms.com/forums/index.php/topic,25128.45.html befolgt und die Datei "manager/includes/extenders/dbapi.mysql.class.inc.php" bei Zeile 80 wie folgt geändert:
    Add before line "global $modx;"
    Code: "global $database_connection_method;"
    Damit werden alle Sonderzeichen wieder korrekt dargestellt.
  1.  permalink
    das wars, super danke. Ist hier ein echt schnelles, sehr schnelles Forum.

    Bade