【发布时间】:2013-08-12 12:19:25
【问题描述】:
我正在使用 utf8_persian_ci 排序规则在波斯网站上工作。
我的 PHP 代码:
<?php
header('Content-Type: text/html; charset=utf-8');
$dbhandle = mysql_connect($hostname, $username, $password)
or die("Unable to connect to MySQL");
mysql_query("SET NAMES 'utf8'");
mysql_query("SET character_set_connection='utf8'", $dbhandle);
$selected = mysql_select_db("news",$dbhandle);
$str = 'فوتبال، فوتسال';
echo $str . '<br>';
$query = "SELECT * FROM news WHERE link_num='92051810161'";
$result = mysql_query($query);
if (mysql_num_rows($result) == 1) {
while ($row = mysql_fetch_array($result)) {
$from_db = $row{'category'};
echo $from_db . '<br>';
}
}
if ($str == $from_db) {
echo "string";
}
?>
问题是代码的最后一个条件在 XAMP 服务器中工作并打印 string 但是当我在服务器上运行此代码时,结果是如此不同!
xamp 服务器 (localhost) 上的结果:
فوتبال، فوتسال
فوتبال، فوتسال
string
服务器上的结果:
فوتبال، فوتسال
فوتبال، فوتسال
strpos() 也不能在服务器上工作,但它在 localhost 中可以正常工作! 我认为服务器上的查询结果与 localhost 上的 Xamp 服务器不同,但我找不到结果。
数据库截图:
【问题讨论】:
-
请添加
news表数据。 ;) -
我添加了数据库和新闻表的两张图片。
-
好的。现在有什么问题?
-
问题是最后
if的代码在 XAMP 服务器中工作并打印字符串,但是当我在自己的服务器上运行此代码时,结果不起作用! -
在
if中测试trim($from_db)。
标签: php mysql unicode utf-8 xampp