Reputation: 6264
I have a PHP page where I am trying to display Arabic text but its showing.
In MySQL database I'm storing arabic text successfully.
I'm using the following code to connect to the database :
function connect(){
$this->dbLink = mysql_connect($this->dbHost,$this->dbUser,$this->dbPass);
if(!$this->dbLink) die("Could not connect to database. " . mysql_error());
mysql_select_db($this->dbName);
mysql_set_charset("utf8", $this->dbLink);
}
And using the following header in the PHP page :
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
But still no success.
Thanks for helping.
Upvotes: 2
Views: 13774
Reputation: 31
Try to add this two lines to your php script after the Mysql connection
mysql_query("SET NAMES cp1256");
mysql_query("set character set cp1256");
Upvotes: 0
Reputation: 5787
Have you tried setting the connection to use UTF-8 (with mysql_set_charset)?
Upvotes: 0
Reputation: 331
You can use this meta code:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
And please check mysql column's character type..
Look to this
Upvotes: 3
Reputation: 21449
check the file encoding, it should be UTF-8, and you can try to run the following query before querying the text:
mysql_query("SET NAMES UTF8");
Upvotes: 3
Reputation: 29942
You set a META-tag that tells the browser to use ISO-8859-1 (<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
), which is for latin-based scripts, but surely not Arabic.
Also make sure you have UTF-8 at all places:
Upvotes: 1
Reputation: 36
Addtional to the headers set in the meta section, check your default_charset setting in the php.ini. default_charset should be empty if you set content type header by your own or correspond with your content-type meta information.
Upvotes: 1