Skip to main content

How to fix the problem in displaying french accented characters from Mysql table on a PHP page?

In a php page I am displaying some hard coded french  texts which has some accented characters like "é è ..." and also some french characters are fetched from Mysql table and displayed on the page.

Here the problem was the hard coded french characters were displaying fine, but the characters fetch from db was not showing properly. It was displaying like "?" with in a black background.


at the top of the page I had set the the meta tag with charset as utf-8

<meta http-equiv="content-type" content="text/html;charset=utf-8">


but this didn't worked

So i tried to change the charset definition of MySQL table by the steps given below

ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;

to change the DB table's default charset to utf-8:

ALTER TABLE tbl_name
  CHARACTER SET utf8,
  COLLATE utf8_general_ci;


to know the charset of your mysql table check the steps given here

Unfortunately this charset change procedure also didn't gave me the expected result, so I tried a php level implementation using the built in function utf8_encode()

I just passed the french string fetched from the mysql table through the utf8_encode

this solved the issue.

The problem occurred because, there is already charset utf-8 declaration at the top of the page using the meta tag

and when the French data is fetched from the table, it is also in utf-8 and a double encoding took place

Code looks similar to this:

------
-----
Your french hard coded characters comes here
-----
-----
fetch data from your mysql table
-----
$var=utf8_encode($rw["MyData"]);
-----
echo $var;
------


Reference : http://www.php.net/manual/en/function.utf8-encode.php

Comments

Popular posts from this blog

How to delete videos from your Youtube Watch History list?

How to Delete Individual or all videos from your Youtube Watch History list? Youtube keeps a fine record of the videos that you had watched earlier. You can view this by visiting the History section. If you want to remove the video's from the list do the following: Logon to Youtube and click on the "History" tab on the left menu to view Watch History ( Read more ) There will be check boxes corresponding to each video in the list Tick the check boxes of the videos which you want to remove Click on " Remove " button to delete the videos.

ICICI prudential Customer portal updated - Option to change password is missing - Know how to change your ICICI prudential password

Recently I received an SMS from ICICI prudential asking for login to their website's customer portal using the phone number as user Id and an autogenerated one time password given in the message as password. The SMS messsage was like this. Dear ***Cust Name*** login to your policy(ies) on www.iciciprulife.com with your user id as **mobile number*** and One time use password as ***password***

What are the Income Tax Rates for Indian citizens for Financial Year 2017-2018?

Income Tax Slab and Rates given below are for Indian citizens of age less than 60. This rates are applicable for the Financial Year 2017-2018 Income Tax Slab Rates Financial Year 2017-2018 Assessment Year 2018-19 Income Tax Slab Rates SLAB 1 Individuals whose total income not exceeding Rs. 2,50,000 ( 2.5 lakhs ) They are exempted from paying income tax.


Urgent Openings for PHP trainees, Andriod / IOS developers and PHP developers in Kochi Trivandrum Calicut and Bangalore. Please Send Your updated resumes to recruit.vo@gmail.com   Read more »
Member
Search This Blog