Page 2 of 2

Re: PayPal Verification Error: Strange Characters

Posted: Sun Feb 06, 2011 1:23 am
by metal450
To revise my reply:

As it turns out, BbWebConsult's fix DOES work for every special character except "&".

What's strange, though, is that as mentioned, in the "Paypal order xxx needs manual verification" email the ampersand IS properly shown as "&". Perhaps OpenCart just doesn't know how to deal with it properly.

In any case, non-english characters in names and addresses DOES work with that fix :)

Re: PayPal Verification Error: Strange Characters

Posted: Fri Mar 11, 2011 1:53 pm
by rocketero
Daniel wrote:i found by changing the request class to::

Code: Select all

<?php
final class Request {
    public $get = array();
    public $post = array();
    public $cookie = array();
    public $files = array();
    public $server = array();
    
      public function __construct() {
        $_GET = $this->clean($_GET);
        $_POST = $this->clean($_POST);
        $_COOKIE = $this->clean($_COOKIE);
        $_FILES = $this->clean($_FILES);
        $_SERVER = $this->clean($_SERVER);
        
        $this->get = $_GET;
        $this->post = $_POST;
        $this->cookie = $_COOKIE;
        $this->files = $_FILES;
        $this->server = $_SERVER;
    }
    
      public function clean($data) {
        if (is_array($data)) {
              foreach ($data as $key => $value) {
                unset($data[$key]);
                
                $data[$this->clean($key)] = $this->clean($value);
              }
        } else { 
              $data = htmlspecialchars($data, ENT_COMPAT);
        }

        return $data;
    }
}
?>
helps.
In what file do you have to palce the above code ??
regards.

Re: PayPal Verification Error: Strange Characters

Posted: Fri Mar 11, 2011 11:36 pm
by Qphoria
You shouldn't need any changes in this thread any longer. I believe I've fixed the issue with the latest paypal patch here:
http://forum.opencart.com/viewtopic.php?f=2&t=17855

Re: PayPal Verification Error: Strange Characters

Posted: Tue Jan 07, 2014 5:12 am
by mrspeakers
I spoke with PayPal and the issue is simple (or horrible, depending on your POV): they ONLY support utf-8.

This is a known issue they are planning to address *someday*, so don't hold your breath. I was so shocked that I even called back to confirm, thinking I must have spoken to a clueless tech...

The reason PayPal accounts work with unicode is that they don't have to go through the API, of course it's all resident on the PayPal server.