Modify

Opened 10 years ago

Closed 10 years ago

#844 closed Bug/Fehler (fixed)

Umlaute werden bei Übertragung an shipcloud falsch übergeben

Reported by: andre@… Owned by: Gerhard Waldemair
Priority: normal Milestone: modified-shop-2.0.1.0
Component: Module Version: 2.0.0.0
Keywords: Cc:
Blocked By: Blocking:

Description

Bei der Übertragung von Daten an shipcloud werden diese (falsch) encodiert. Wir rechnen immer mit UTF-8-Daten. Insofern ist es nicht nötig, Daten extra zu encoden/escapen. Aktuell kommt ein "ö" z.B. als "\u00c3\u00b6" bei uns an.

Attachments (0)

Change History (3)

comment:1 by Torsten Riemer, 10 years ago

Milestone: modified-shop-2.0.0.1

comment:2 by nx3d@…, 10 years ago

Hi,
Fix wiefolgt:

in der Datei "includes/external/shipcloud/class.shipcloud.php"
nach Zeile 19 ("require_once(DIR_WS_CLASSES.'order.php');" folgendens einfügen:

function str_to_utf8 ($str) {
      $decoded = utf8_decode($str);
      if (mb_detect_encoding($decoded , 'UTF-8', true) === false)
          return $str;
      return $decoded;
  }

Weiter unten ca Zeile 350
Suchen nach

private function encode_request($array) {
    foreach ($array as $key => $value) {
      if (is_array($value)) {
        $array[$key] = $this->encode_request($value);
      } else {
        $array[$key] = utf8_encode(decode_htmlentities($value));
      }
    }
    
    return $array;
  }

ändern auf

private function encode_request($array) {
    foreach ($array as $key => $value) {
      if (is_array($value)) {
        $array[$key] = $this->encode_request($value);
      } else {
        $array[$key] = str_to_utf8(decode_htmlentities($value));
      }
    }
    
    return $array;
  }

getestet und im Einsatz.
LG
nx3d

comment:3 by Gerhard Waldemair, 10 years ago

Owner: set to Gerhard Waldemair
Resolution: fixed
Status: newclosed

In 9739:

fix #844

Modify Ticket

Action
as closed The owner will remain Gerhard Waldemair.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.