[payment] Saferpay Modul Beträge über 1'000.00 SFr

MyOOS hat einen Fehler, oder tut nicht das, was Ihr erwartet? Derartige "Unanehmlichkeiten" bitte hier.
Antworten
r23
Beiträge: 2622
Registriert: 18.09.2008, 05:56
Wohnort: Hagen
Kontaktdaten:

Beitrag von r23 »

Hallo,

das Modul übermittelt bei Beträgen über 1'000.00 SFr einen falschen Wert an Saferpay.


aus
$amount = number_format($order->info['total] * $oCurrencies->get_value($my_currency), $oCurrencies->get_decimal_places($my_currency));


wird
$amount = number_format($order->info['total] * $oCurrencies->get_value($my_currency), $oCurrencies->get_decimal_places($my_currency), '.', '');


http://de3.php.net/manual/de/function.number-format.php
string number_format ( float $number , int $decimals , string $dec_point , string $thousands_sep )

Die Funktion akzeptiert entweder einen, zwei oder vier Parameter (nicht jedoch drei):

Wird nur ein Parameter übergeben, wird number ohne Nachkommastellen, aber mit einem Komma (",") zur Gruppierung der Tausenderstellen formatiert.

Wurden zwei Parameter übergeben, wird number als Zahl mit decimals Nachkommastellen mit einem Punkt (".") als Trennzeichen sowie einem Komma (",") zur Gruppierung der Tausenderstellen formatiert.

Wenn alle vier Parameter übergeben wurden, wird number als Zahl formatiert, die decimals Nachkommastellen hat, die mittels dec_point anstelle des Punktes (".") von der Zahl getrennt werden, und deren Tausenderstellen mittels thousands_sep anstelle des Kommas (",") gruppiert werden.

Änderung des Scriptes wird empfohlen

r23
Antworten