Results 1 to 3 of 3

Thread: Problem ze starymi notatkami - json_encode(): Invalid UTF-8 sequence in argument...

  1. #1
    Dariusz86 Guest

    Default Problem ze starymi notatkami - json_encode(): Invalid UTF-8 sequence in argument...

    Witam,

    Aktualnie posiadam SUgarCRM CE 6.5.16
    Przed upgradem miałem wersję 6.1.xx

    Niedawno zauważyłem, że niektóre stare notaki nie otwierają mi sie, tylko pojawia mi się błąd.

    {code}
    Warning: json_encode(): Invalid UTF-8 sequence in argument occurred in /var/www/html/sugarcrm/include/JSON.php on line 68 [2014-01-22 11:45:56] display_stack_trace caller, file: /var/www/html/sugarcrm/include/utils.php line#: 3203
    [L:](:StackTraceErrorHandler)
    /var/www/html/sugarcrm/include/JSON.php[L:68](:json_encode)
    /var/www/html/sugarcrm/include/MVC/View/SugarView.php[L:193](JSON:encode)
    /var/www/html/sugarcrm/include/MVC/Controller/SugarController.php[L:345](SugarViewrocess)
    /var/www/html/sugarcrm/include/MVC/Controller/SugarController.php[L:292](SugarControllerrocessView)
    /var/www/html/sugarcrm/include/MVC/SugarApplication.php[L:89](SugarController:execute)
    /var/www/html/sugarcrm/index.php[L:46](SugarApplication:execute)
    {code}

    Czy ktoś ma jakiś pomysł co z tym zrobić?
    Attached Images Attached Images  

  2. #2
    koblam is offline Junior Member
    Join Date
    Feb 2011
    Posts
    6

    Default Re: Problem ze starymi notatkami - json_encode(): Invalid UTF-8 sequence in argument.

    Jakieś znaki z tych notatek nie są najwyraźniej zakodowane w UTF-8 przez co wywala się funkcja kodująca stronę przy włączonym ajaxie.
    Opcja 1 to wyłączyć ajax, wyedytować problematyczne notatki i zapisać ponownie, aby wymusić zakodowanie znaków w UTF-8
    Opcja 2 otworzyć plik /var/www/html/sugarcrm/include/JSON.php i w dorzucić fix'a poprawiającego znaki jeśli są w innym kodowaniu niż utf-8
    Jest tam funkcja encode która wygląda tak:

    public static function encode($string, $addSecurityEnvelope = false, $encodeSpecial = false)
    {

    $encodedString = json_encode($string);

    if ($encodeSpecial)
    {
    $charMap = array('<' => '\u003C', '>' => '\u003E', "'" => '\u0027', '&' => '\u0026');
    foreach($charMap as $c => $enc)
    {
    $encodedString = str_replace($c, $enc, $encodedString);
    }
    }

    return $encodedString;
    }
    Trzeba by podmienić na

    public static function encode($string, $addSecurityEnvelope = false, $encodeSpecial = false)
    {

    $detected_encoding = mb_detect_encoding($string);

    if($detected_encoding!==false && !mb_check_encoding($string, 'UTF-8'))
    {
    $string = mb_convert_encoding($string, 'UTF-8',$detected_encoding);
    }

    $encodedString = json_encode($string);

    if ($encodeSpecial)
    {
    $charMap = array('<' => '\u003C', '>' => '\u003E', "'" => '\u0027', '&' => '\u0026');
    foreach($charMap as $c => $enc)
    {
    $encodedString = str_replace($c, $enc, $encodedString);
    }
    }

    return $encodedString;

  3. #3
    Dariusz86 Guest

    Default Re: Problem ze starymi notatkami - json_encode(): Invalid UTF-8 sequence in argument.

    Witam.

    Po zmianie jest jeszcze większy błąd.

    Warning: mb_detect_encoding() expects parameter 1 to be string, array given occurred in /var/www/html/sugarcrm/include/JSON.php on line 68 [2014-02-06 15:02:06] display_stack_trace caller, file: /var/www/html/sugarcrm/include/utils.php line#: 3203
    [L:](:StackTraceErrorHandler)

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Replies: 1
    Last Post: 2014-01-23, 09:44 AM
  2. Erro Invalid argument supplied for foreach()
    By rafascarvalho in forum Portugese
    Replies: 5
    Last Post: 2012-04-18, 02:20 PM
  3. Invalid argument
    By Splini in forum Deutsche
    Replies: 0
    Last Post: 2009-03-17, 10:36 AM
  4. Invalid argument supplied for foreach
    By molnaram in forum Help
    Replies: 1
    Last Post: 2008-01-09, 08:00 AM
  5. Install Error - invalid argument in call.php
    By TechMosaic in forum Installation and Upgrade Help
    Replies: 2
    Last Post: 2006-11-22, 07:42 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •