Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 249
  • Last Modified:

French Character Display Incorrect

I am using an API service that looks up a Bible verse in French and then returns it as a json lable.

The Raw Jason text looks like this:

[{"book_name":"Matthieu","book_id":"Matt","book_order":"55","chapter_id":"28","chapter_title":"Chapter 28","verse_id":"5","verse_text":"Et l\u2019ange, r\u00e9pondant, dit aux femmes: Pour vous, n\u2019ayez point de peur; car je sais que vous cherchez J\u00e9sus le crucifi\u00e9; \n\t\t\t","paragraph_number":"28"},

Open in new window


I know how to grab the text portion of the Json, but it isn't correctly handling the french character sets.  It instead displays it like this:

Et l’ange, répondant, dit aux femmes: Pour vous, n’ayez point de peur; car je sais que vous cherchez Jésus le crucifié; il n’es

Open in new window


In case this doen't display well, I'm attaching a test file that shows this more clearly.  I assume that it has something to do with changing the encoding. The API help desk I'm using isn't answering me to quickly.

Thanks.
frenchText.jpg
0
Paul Konstanski
Asked:
Paul Konstanski
2 Solutions
 
PredragNetwork EngineerCommented:
Try to change problematic characters with html entity.

instead \u2019 use ’  - find replacements for other characters for HTML Entity (decimal)

More details on \u2019
0
 
Paul KonstanskiProject SpecialistAuthor Commented:
I don't have control over the text being sent to me. It is what I get. I need to know via PHP how to convert what I've been given into readable text on screen.

What you sent me predgrag doesn't help me do that.  I can't manually go thru and change each entity that is returned.
0
 
Brian TaoSenior Business Solutions ConsultantCommented:
It should be an encoding/charset issue.  What's the charset in you page?  Do you have a line in the page source similar to the following?
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

Open in new window

0
 
Ray PaseurCommented:
It's a common problem since the world is becoming smaller and more connected day-by-day.  The explanation, as well as guidance about how to fix it, is here:
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_11880-Unicode-PHP-and-Character-Collisions.html

I recently made a presentation to the DC PHP User's Group on this subject.  The slide deck is here:
http://www.slideshare.net/RayPaseur/unicode-php-and-character-set-collisions
0
 
Paul KonstanskiProject SpecialistAuthor Commented:
Thanks for the insight. Your comments helped me see that in my testing I wasn't correctly putting in the character set in the HTML header.

In my application it works fine because character set is in the header. But with the test it was just dumping raw characters which didn't work.

Thanks again for the help.
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now