Marktplatz - Eine große Auswahl an neuen und hilfreichen Modulen sowie modernen Templates für die modified eCommerce Shopsoftware
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Moneybookers Umlaute äÄ

    hstreicher

    • Fördermitglied
    • Beiträge: 281
    Moneybookers Umlaute äÄ
    am: 26. September 2010, 09:44:06
    Hallo,

    ich habe mich gerade mit dem Moneybookers Modul beschäftigt und finde folgendes komisch.

    in includes/classes/class.moneybookers.php Zeile 170 steht folgendes:

    Code: PHP  [Auswählen]
         $value = strtr($value, "áéíóöõúüûÁÉÍÓÖÕÚÜÛ", "aeiooouuuAEIOOOUUU");

    wo sind ä und Ä ?

    (modified eCommerce Shopsoftware 1.05 final und Vorgänger)

    mfg Hannes

    Linkback: https://www.modified-shop.org/forum/index.php?topic=8278.0

    hstreicher

    • Fördermitglied
    • Beiträge: 281
    Moneybookers Umlaute äÄ
    Antwort #1 am: 26. September 2010, 10:19:39
    Nachtrag:
    und auch in includes/modules/payment/amoneybookers.php ca Zeile 276

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Moneybookers Umlaute äÄ
    Antwort #2 am: 16. Mai 2011, 14:08:18
    Auweija... das Thema hatten wir völlig vergessen!

    Danke für den Wink Hannes:

    also ich verwende auch das Moneybookers Kreditkartenmodul und habe keine Problem (mehr) damit.

    da muss nur das Ää und Aa ergänzt werden: Moneybookers Umlaute äÄ

    mfg Hannes

    Quelle: Welches Kreditkartenmodul?

    Grüße

    Torsten

    Jim

    • Fördermitglied
    • Beiträge: 356
    • Geschlecht:
    Moneybookers Umlaute äÄ
    Antwort #3 am: 17. Mai 2011, 13:15:36
    Habe ich das richtig verstanden?

    Code: PHP  [Auswählen]
    $value = strtr($value, "áéíóöõúüûÁÉÍÓÖÕÚÜÛ", "aeiooouuuAEIOOOUUU");
    ändern in:

    Code: PHP  [Auswählen]
    $value = strtr($value, "áäéíóöõúüûÁÄÉÍÓÖÕÚÜÛ", "aaeiooouuuAAEIOOOUUU");
    Was hat das genau für eine Auswirkung?

    Schöne Grüße

    Jim

    hstreicher

    • Fördermitglied
    • Beiträge: 281
    Moneybookers Umlaute äÄ
    Antwort #4 am: 17. Mai 2011, 18:45:14
    Moneybookers sind "umlautfreie" Engländer, deshalb mappen die alle Umlaute in die Orginale bevor die die Kartendaten validieren, d.h. wenn du es nicht macht's dann wird die Kreditkartenzahlung abgelehnt sobald ein ä oder Ä im Namen oder Adresse vorkommt.

    Übrigens nicht nur das äÄ sondern auch andere Umlaute sollten ergänzt werden, je nach verwendeten Sprachen, steht auch so in der Datei aus Beitrag 2.

    mfg hannes

    Bennie

    • Frisch an Board
    • Beiträge: 70
    Moneybookers Umlaute äÄ
    Antwort #5 am: 18. Mai 2011, 06:19:17
    Leute ich komme nicht mehr ganz mit. Was ist nun der Unterschied zwischen "amoneybookers" und "moneybookers", sind doch verschiedene Module, oder?

    Und wie ist es mit "ß" in "ss" wandeln, muss das nicht auch gemacht werden?

    LG
    Bennie

    Bennie

    • Frisch an Board
    • Beiträge: 70
    Moneybookers Umlaute äÄ
    Antwort #6 am: 20. Mai 2011, 05:49:03
    So ich habe es jetzt mal ausprobiert, aber das Ergebnis ist nicht befriedigend. Heißt z.b. jemand Brüning wird daraus Bruning und nicht etwa Bruening, das ist ja auch klar wenn ich mir includes/classes/class.moneybookers.php Zeile 170 anschaue, oder liegt das letztendlich gar nicht am xtc Modul?
    Aus ä sollte doch sinnvollerweise ae werden und aus ß ss etc, oder?

    Da das anscheinend kein großes Thema ist, nährt den Verdacht, dass dieses Modul kaum genutzt wird.
    Leider hat auch niemand auf die Frage geantwortet was man ernsthaft als Alternative nehmen könnte.
    Diejenigen die dieses Modul nutzen, müssten doch längst auf dieses Problem gestoßen sein.
    Ich hatte das schon vor ein paar Tagen gefragt, aber beim Thema Kreditkartenmodul stoße ich irgendwie in "dunkles Gebiet" vor, warum nur??

    Viele Grüße
    Bennie

    franky_n

    • Experte
    • Beiträge: 4.950
    Moneybookers Umlaute äÄ
    Antwort #7 am: 20. Mai 2011, 06:35:25
    Hallo Bennie,

    dann mach es einfach so:

    Code: PHP  [Auswählen]
    $value = strtr($value, "áéíóõúûÁÉÍÓÕÚÛ", "aeioouuAEIOOUU");
     
    und direkt da drunter schreibst Du:

    Code: PHP  [Auswählen]
    $value = str_replace("ä", "ae", $value);
    $value = str_replace("Ä", "Ae", $value);
    $value = str_replace("ö", "oe", $value);
    $value = str_replace("Ö", "Oe", $value);
    $value = str_replace("ü", "ue", $value);
    $value = str_replace("ü", "Ue", $value);
    $value = str_replace("ß", "ss", $value);
    Falls dann noch ein Umlaut oder Zeichen fehlt einfach genau nach dem Schema drunter schreiben... :)

    Viele Grüße

    Franky

    Bennie

    • Frisch an Board
    • Beiträge: 70
    Moneybookers Umlaute äÄ
    Antwort #8 am: 20. Mai 2011, 07:38:27
    Wenn ich das
    $value = strtr($value, "áéíóõúûÁÉÍÓÕÚÛ", "aeioouuAEIOOUU");

    weglasse geht es

    es geht doch, hatte bloß vergessen, dass die Umlaute die ersetzt werden nicht nochmal in der ersten Zeile vorkommen dürfen.
    Allerdings taucht jetzt die eingetragene Adresse des Kunden nicht mehr auf. Wenn also moneybookers geladen wird steht da Name und Nachnahme und auch die Felder für die Keditkartendaten, aber eben die Adresse nicht.
    Noch eine Idee?? Alles etwas kurios. ;-)

    Bennie

    Bennie

    • Frisch an Board
    • Beiträge: 70
    Moneybookers Umlaute äÄ
    Antwort #9 am: 20. Mai 2011, 09:19:21
    ich habe es jetzt mal so abgeändert:

    Code: PHP  [Auswählen]
            foreach ($params as $key => $value) {
              $value = strtr($value, "áéíóõúûÁÉÍÓÕÚÛ", "aeioouuAEIOOUU");
              if ($key!='status_url') {
                    $value=urlencode(utf8_encode($value));
              }
    Ich weiß nur nicht, ob man das so machen darf, jedenfalls werden die Umlaute jetzt übernommen durch das "utf8_encode".

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Moneybookers Umlaute äÄ
    Antwort #10 am: 24. Mai 2011, 15:43:28
    Das Problem wurde in r1978 behoben!

    Grüße

    Torsten

    scratch

    • Neu im Forum
    • Beiträge: 1
    Re: Moneybookers Umlaute äÄ
    Antwort #11 am: 19. August 2011, 15:15:41
    [...]
    Allerdings taucht jetzt die eingetragene Adresse des Kunden nicht mehr auf. Wenn also moneybookers geladen wird steht da Name und Nachnahme und auch die Felder für die Keditkartendaten, aber eben die Adresse nicht.
    [...]

    Ahoi Beenie,
    habe anscheinend das gleiche Problem vor dem du gerade stehst, oder gestanden hast. Die Adressdaten verschwinden immer genau dann wenn das "city" Feld mit "utf8_encode, urlencode" oder einer Verschachtelung von beiden behandelt wird, str_replace führt zum gleichen Ergebnis - Adressen weg. Das Konto welches ich zum testen benutzt hatte, hat im Stadt Namen ein Umlaut, wenn ich "city" nun einen Wert ohne Umlaute zuweise sind die Adressdaten weg, sobald ich dem "city" Feld einen Wert mit Umlauten gebe sind die wieder da.

    Meine "class.moneybookers.php" sind nun um Zeile 170 so aus (kein schicker Code, ist auch nur zum testen):

    Code: PHP  [Auswählen]
                    $data = '';
            foreach ($params as $key => $value) {
                            if ($key == 'firstname') {
                                    $value = urlencode(utf8_encode($value));
                            }
                           
                            if ($key == 'lastname') {
                                    $value = urlencode(utf8_encode($value));
                            }
                           
                            if ($key == 'address') {
                                    $value = urlencode(utf8_encode($value));
                            }
                           
                            if ($key == 'postal_code') {
                                    $value = urlencode(utf8_encode($value));
                            }

                            if ($key == 'city') {
                                    $value =  urlencode(utf8_encode($value));
                            }

                            if ($key == 'state') {
                                    $value = urlencode(utf8_encode($value));
                            }

                     
              $data .= $key . '=' . $value . "&";
            }


                    return $this->form_action_url.'?'.$data;

    Sobald die if-Abfrage mit dem "city" Feld auskommentiert ist funktionieren die Adressfelder wieder.

    Die von Tomcraft vorgeschlagene Version r1978 führt während der Auswahl der Zahlungsweise zu der Fehlermeldung:

    Zitat
    Warning: constant(): Couldn't find constant MODULE_PAYMENT_MONEYBOOKERS_CC_NEG_SHIPPING in [...]html/modified eCommerce Shopsoftware-1.05/includes/classes/class.moneybookers.php on line 70

    Es kann dann weiter geklickt werden aber die Adressfeldern sind im Moneybookers Frame natürlich trotzdem weg.

    Shopversion ist modified eCommerce Shopsoftware 1.05

    Vielleicht hat ja hier wer eine Lösung.
    9 Antworten
    5953 Aufrufe
    07. Dezember 2010, 21:45:20 von Igotcha
    4 Antworten
    3903 Aufrufe
    27. Oktober 2011, 00:34:35 von Ladiva
    3 Antworten
    2428 Aufrufe
    09. August 2010, 16:21:04 von styledup
               
    anything