2014-11-24 33 views
0

我有这个功能来检查是否有存在于正值DB与否:发现MySQL数据库和PHP现有的值不英文字符

function word_exist($word) { 
$sql="SELECT * FROM words WHERE word=`?`"; 
$result=$connect->prepare($sql); 
$result->bindValue(1,$word); 
$result->execute(); 
$num=$result->fetchColumn(); 
if ($num=0) return true; 
else return false; 
} 

如果我使用这样的功能,也不会工作并返回无效输出:

if (word_exist("تست")){ 
echo "1"; 
} 

但它适用于英文字符,它不适用于波斯字符。

我该如何解决它?

特别是值存在于数据库中,但函数返回false为波斯字符。

另外我在函数中使用了utf8_encode,但没有解决!

回答

1

也许您的列编码是问题,请尝试更改您的表并配置您的列以使其支持其他语言。尝试更改您的选项列,如果您的列编码是'latin1_swedish_ci'...希望它的工作

+0

tnx,但没关系,排序规则是utf8_bin – Bifo 2014-11-24 17:02:12