Jump to content

Olvashatatlan vásárlói üzenet [Megoldva]


Mechanicus

Recommended Posts

Sziasztok!

 

 

Presta 1.7.5.1. verziószám, de már 1.6-óta fennáll. 

A vásárló által a rendelés leadáskor, a megjegyzés mezőbe írt üzenet, a vevőszolgálat felületen olvashatatlanul jelenik meg.

Kb ezt látni az üzenetből: 

Szeretném ha kiszállítanák a megadott címre ingyenesen,valamint a tartozékként megjelölt piszkavasat és hamuzót is.

Gondolom karakter kódolási hiba, de nem találtam hol tudnám átállítani.

Találkozott már valaki ezzel a problémával?

 

 

 

Edited by Mechanicus (see edit history)
Link to comment
Share on other sites

Szia!

Kétfelé mennék: az egyik, hogy a hiba az adminbeli .tpl rossz karakterkódolásából fakad; a másik hogy eleve rosszul kerül be sql-be az üzenet.

Előbbi egyszerűbb és visszamenőleg is megoldja a problémát. Második bonyolultabb, mert csak a javítástól számított üzeneteket (tesztelni ildomos) fogja jól mutatni.

Előbbi megoldása:

ADMIN/themes/default/template/controllers/orders/helpers/view/view.tpl

<p class="message-item-text">
 {$message['message']|escape:'html':'UTF-8'|nl2br}
</p>

helyett:

<p class="message-item-text">
  {$message['message']}
</p>

Utóbbi megoldása (amikor már eleve rosszul kerül be az sql-be):

classes/tools.php: (mentés/backup legyen!)

   public static function htmlentitiesUTF8($string, $type = ENT_QUOTES)
    {
        if (is_array($string)) {
            return array_map(array('Tools', 'htmlentitiesUTF8'), $string);
        }
    return htmlspecialchars((string)$string, $type, "UTF-8");

        //USE htmlspecialchars NOT htmlentities
    }

Link to comment
Share on other sites

  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...